diff --git a/app/code/Magento/AdminAdobeIms/composer.json b/app/code/Magento/AdminAdobeIms/composer.json
index 0da1aa2549305..117c985f1adc4 100644
--- a/app/code/Magento/AdminAdobeIms/composer.json
+++ b/app/code/Magento/AdminAdobeIms/composer.json
@@ -1,33 +1,34 @@
{
"name": "magento/module-admin-adobe-ims",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.0",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-adobe-ims": "*",
- "magento/module-adobe-ims-api": "*",
- "magento/module-config": "*",
- "magento/module-backend": "*",
- "magento/module-user": "*",
- "magento/module-captcha": "*",
- "magento/module-authorization": "*",
- "magento/module-store": "*",
- "magento/module-email": "*",
- "magento/module-integration": "*",
- "magento/module-jwt-user-token": "*",
- "magento/module-security": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-adobe-ims": "2.1.*",
+ "magento/module-adobe-ims-api": "2.1.*",
+ "magento/module-config": "101.2.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-user": "101.2.*",
+ "magento/module-captcha": "100.4.*",
+ "magento/module-authorization": "100.4.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-email": "101.1.*",
+ "magento/module-integration": "100.4.*",
+ "magento/module-jwt-user-token": "100.4.*",
+ "magento/module-security": "100.4.*"
},
"suggest": {
- "magento/module-theme": "*"
+ "magento/module-theme": "101.1.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -37,3 +38,4 @@
}
}
}
+
diff --git a/app/code/Magento/AdminAnalytics/composer.json b/app/code/Magento/AdminAnalytics/composer.json
index ef3829fd149c6..1f3efd6281a58 100644
--- a/app/code/Magento/AdminAnalytics/composer.json
+++ b/app/code/Magento/AdminAnalytics/composer.json
@@ -1,23 +1,24 @@
{
"name": "magento/module-admin-analytics",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.4",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-backend": "*",
- "magento/module-config": "*",
- "magento/module-store": "*",
- "magento/module-ui": "*",
- "magento/module-release-notification": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-config": "101.2.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-ui": "101.2.*",
+ "magento/module-release-notification": "100.4.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -27,3 +28,4 @@
}
}
}
+
diff --git a/app/code/Magento/AdminNotification/composer.json b/app/code/Magento/AdminNotification/composer.json
index 28ca1f626a2cd..54c910c5d3459 100644
--- a/app/code/Magento/AdminNotification/composer.json
+++ b/app/code/Magento/AdminNotification/composer.json
@@ -1,24 +1,25 @@
{
"name": "magento/module-admin-notification",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.4",
"require": {
"php": "~7.4.0||~8.1.0",
"lib-libxml": "*",
- "magento/framework": "*",
- "magento/module-backend": "*",
- "magento/module-media-storage": "*",
- "magento/module-store": "*",
- "magento/module-ui": "*",
- "magento/module-config": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-media-storage": "100.4.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-ui": "101.2.*",
+ "magento/module-config": "101.2.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -28,3 +29,4 @@
}
}
}
+
diff --git a/app/code/Magento/AdobeIms/composer.json b/app/code/Magento/AdobeIms/composer.json
index 872c29ffc97b4..b35b052711334 100644
--- a/app/code/Magento/AdobeIms/composer.json
+++ b/app/code/Magento/AdobeIms/composer.json
@@ -1,20 +1,21 @@
{
"name": "magento/module-adobe-ims",
"description": "Magento module responsible for authentication to Adobe services",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-adobe-ims-api": "*",
- "magento/module-authorization": "*",
- "magento/module-backend": "*",
- "magento/module-config": "*",
- "magento/module-user": "*"
- },
"type": "magento2-module",
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "2.1.4",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/framework": "103.0.*",
+ "magento/module-adobe-ims-api": "2.1.*",
+ "magento/module-authorization": "100.4.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-config": "101.2.*",
+ "magento/module-user": "101.2.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -24,3 +25,4 @@
}
}
}
+
diff --git a/app/code/Magento/AdobeImsApi/composer.json b/app/code/Magento/AdobeImsApi/composer.json
index 231f1ddfa1513..5dd770ff3d660 100644
--- a/app/code/Magento/AdobeImsApi/composer.json
+++ b/app/code/Magento/AdobeImsApi/composer.json
@@ -1,15 +1,16 @@
{
"name": "magento/module-adobe-ims-api",
"description": "Implementation of Magento module responsible for authentication to Adobe services",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/framework": "*"
- },
"type": "magento2-module",
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "2.1.2",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/framework": "103.0.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -19,3 +20,4 @@
}
}
}
+
diff --git a/app/code/Magento/AdvancedPricingImportExport/composer.json b/app/code/Magento/AdvancedPricingImportExport/composer.json
index 59ea74cf4ddcb..2164413314854 100644
--- a/app/code/Magento/AdvancedPricingImportExport/composer.json
+++ b/app/code/Magento/AdvancedPricingImportExport/composer.json
@@ -1,26 +1,27 @@
{
"name": "magento/module-advanced-pricing-import-export",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-catalog": "*",
- "magento/module-catalog-import-export": "*",
- "magento/module-catalog-inventory": "*",
- "magento/module-customer": "*",
- "magento/module-eav": "*",
- "magento/module-import-export": "*",
- "magento/module-store": "*",
- "magento/module-directory": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-catalog-import-export": "101.1.*",
+ "magento/module-catalog-inventory": "100.4.*",
+ "magento/module-customer": "103.0.*",
+ "magento/module-eav": "102.1.*",
+ "magento/module-import-export": "101.0.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-directory": "100.4.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -30,3 +31,4 @@
}
}
}
+
diff --git a/app/code/Magento/AdvancedSearch/composer.json b/app/code/Magento/AdvancedSearch/composer.json
index 30205c5255cdd..7367a01eeba54 100644
--- a/app/code/Magento/AdvancedSearch/composer.json
+++ b/app/code/Magento/AdvancedSearch/composer.json
@@ -1,25 +1,26 @@
{
"name": "magento/module-advanced-search",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.3",
"require": {
- "magento/framework": "*",
- "magento/module-backend": "*",
- "magento/module-catalog": "*",
- "magento/module-catalog-search": "*",
- "magento/module-config": "*",
- "magento/module-customer": "*",
- "magento/module-search": "*",
- "magento/module-store": "*",
+ "magento/framework": "103.0.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-catalog-search": "102.0.*",
+ "magento/module-config": "101.2.*",
+ "magento/module-customer": "103.0.*",
+ "magento/module-search": "101.1.*",
+ "magento/module-store": "101.1.*",
"php": "~7.4.0||~8.1.0"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -29,3 +30,4 @@
}
}
}
+
diff --git a/app/code/Magento/Amqp/composer.json b/app/code/Magento/Amqp/composer.json
index c7d8d49fb0003..6f2b360634d3e 100644
--- a/app/code/Magento/Amqp/composer.json
+++ b/app/code/Magento/Amqp/composer.json
@@ -1,20 +1,21 @@
{
"name": "magento/module-amqp",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.2",
"require": {
- "magento/framework": "*",
- "magento/framework-amqp": "*",
- "magento/framework-message-queue": "*",
+ "magento/framework": "103.0.*",
+ "magento/framework-amqp": "100.4.*",
+ "magento/framework-message-queue": "100.4.*",
"php": "~7.4.0||~8.1.0"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -24,3 +25,4 @@
}
}
}
+
diff --git a/app/code/Magento/Analytics/composer.json b/app/code/Magento/Analytics/composer.json
index 9bf08b4b068ca..8187695015c60 100644
--- a/app/code/Magento/Analytics/composer.json
+++ b/app/code/Magento/Analytics/composer.json
@@ -1,19 +1,20 @@
{
"name": "magento/module-analytics",
"description": "N/A",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/module-backend": "*",
- "magento/module-config": "*",
- "magento/module-integration": "*",
- "magento/module-store": "*",
- "magento/framework": "*"
- },
"type": "magento2-module",
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.5",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/module-backend": "102.0.*",
+ "magento/module-config": "101.2.*",
+ "magento/module-integration": "100.4.*",
+ "magento/module-store": "101.1.*",
+ "magento/framework": "103.0.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -23,3 +24,4 @@
}
}
}
+
diff --git a/app/code/Magento/AsynchronousOperations/composer.json b/app/code/Magento/AsynchronousOperations/composer.json
index b09ca94052e87..5d39b99918ecb 100644
--- a/app/code/Magento/AsynchronousOperations/composer.json
+++ b/app/code/Magento/AsynchronousOperations/composer.json
@@ -1,27 +1,28 @@
{
"name": "magento/module-asynchronous-operations",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.5",
"require": {
- "magento/framework": "*",
- "magento/framework-message-queue": "*",
- "magento/framework-bulk": "*",
- "magento/module-authorization": "*",
- "magento/module-backend": "*",
- "magento/module-ui": "*",
+ "magento/framework": "103.0.*",
+ "magento/framework-message-queue": "100.4.*",
+ "magento/framework-bulk": "101.0.*",
+ "magento/module-authorization": "100.4.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-ui": "101.2.*",
"php": "~7.4.0||~8.1.0"
},
"suggest": {
- "magento/module-admin-notification": "*",
+ "magento/module-admin-notification": "100.4.*",
"magento/module-logging": "*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -31,3 +32,4 @@
}
}
}
+
diff --git a/app/code/Magento/Authorization/composer.json b/app/code/Magento/Authorization/composer.json
index d122e8b29b46e..34392ac507373 100644
--- a/app/code/Magento/Authorization/composer.json
+++ b/app/code/Magento/Authorization/composer.json
@@ -1,19 +1,20 @@
{
"name": "magento/module-authorization",
"description": "Authorization module provides access to Magento ACL functionality.",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-backend": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-backend": "102.0.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -23,3 +24,4 @@
}
}
}
+
diff --git a/app/code/Magento/AwsS3/composer.json b/app/code/Magento/AwsS3/composer.json
index 19078b9ee7b77..c74db49a09dfe 100644
--- a/app/code/Magento/AwsS3/composer.json
+++ b/app/code/Magento/AwsS3/composer.json
@@ -1,18 +1,19 @@
{
"name": "magento/module-aws-s3",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "proprietary"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.3",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-remote-storage": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-remote-storage": "100.4.*"
},
- "type": "magento2-module",
- "license": [
- "proprietary"
- ],
"autoload": {
"files": [
"registration.php"
@@ -22,3 +23,4 @@
}
}
}
+
diff --git a/app/code/Magento/Backend/composer.json b/app/code/Magento/Backend/composer.json
index 65aa05fe71e56..effee3ad64e77 100644
--- a/app/code/Magento/Backend/composer.json
+++ b/app/code/Magento/Backend/composer.json
@@ -1,38 +1,39 @@
{
"name": "magento/module-backend",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "102.0.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-backup": "*",
- "magento/module-catalog": "*",
- "magento/module-config": "*",
- "magento/module-cms": "*",
- "magento/module-customer": "*",
- "magento/module-developer": "*",
- "magento/module-directory": "*",
- "magento/module-eav": "*",
- "magento/module-quote": "*",
- "magento/module-reports": "*",
- "magento/module-require-js": "*",
- "magento/module-sales": "*",
- "magento/module-security": "*",
- "magento/module-store": "*",
- "magento/module-translation": "*",
- "magento/module-ui": "*",
- "magento/module-user": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-backup": "100.4.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-config": "101.2.*",
+ "magento/module-cms": "104.0.*",
+ "magento/module-customer": "103.0.*",
+ "magento/module-developer": "100.4.*",
+ "magento/module-directory": "100.4.*",
+ "magento/module-eav": "102.1.*",
+ "magento/module-quote": "101.2.*",
+ "magento/module-reports": "100.4.*",
+ "magento/module-require-js": "100.4.*",
+ "magento/module-sales": "103.0.*",
+ "magento/module-security": "100.4.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-translation": "100.4.*",
+ "magento/module-ui": "101.2.*",
+ "magento/module-user": "101.2.*"
},
"suggest": {
- "magento/module-theme": "*"
+ "magento/module-theme": "101.1.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php",
@@ -43,3 +44,4 @@
}
}
}
+
diff --git a/app/code/Magento/Backup/composer.json b/app/code/Magento/Backup/composer.json
index e7437a3077aa7..0a7053ffa6a0c 100644
--- a/app/code/Magento/Backup/composer.json
+++ b/app/code/Magento/Backup/composer.json
@@ -1,21 +1,22 @@
{
"name": "magento/module-backup",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-backend": "*",
- "magento/module-cron": "*",
- "magento/module-store": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-cron": "100.4.*",
+ "magento/module-store": "101.1.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -25,3 +26,4 @@
}
}
}
+
diff --git a/app/code/Magento/Bundle/composer.json b/app/code/Magento/Bundle/composer.json
index 47be75a42c254..c98745e5a182e 100644
--- a/app/code/Magento/Bundle/composer.json
+++ b/app/code/Magento/Bundle/composer.json
@@ -1,39 +1,40 @@
{
"name": "magento/module-bundle",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "101.0.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-backend": "*",
- "magento/module-catalog": "*",
- "magento/module-catalog-inventory": "*",
- "magento/module-catalog-rule": "*",
- "magento/module-checkout": "*",
- "magento/module-config": "*",
- "magento/module-customer": "*",
- "magento/module-eav": "*",
- "magento/module-gift-message": "*",
- "magento/module-media-storage": "*",
- "magento/module-quote": "*",
- "magento/module-sales": "*",
- "magento/module-store": "*",
- "magento/module-tax": "*",
- "magento/module-ui": "*",
- "magento/module-directory": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-catalog-inventory": "100.4.*",
+ "magento/module-catalog-rule": "101.2.*",
+ "magento/module-checkout": "100.4.*",
+ "magento/module-config": "101.2.*",
+ "magento/module-customer": "103.0.*",
+ "magento/module-eav": "102.1.*",
+ "magento/module-gift-message": "100.4.*",
+ "magento/module-media-storage": "100.4.*",
+ "magento/module-quote": "101.2.*",
+ "magento/module-sales": "103.0.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-tax": "100.4.*",
+ "magento/module-ui": "101.2.*",
+ "magento/module-directory": "100.4.*"
},
"suggest": {
- "magento/module-webapi": "*",
- "magento/module-bundle-sample-data": "*",
- "magento/module-sales-rule": "*"
+ "magento/module-webapi": "100.4.*",
+ "magento/module-bundle-sample-data": "Sample Data version: 100.4.*",
+ "magento/module-sales-rule": "101.2.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -43,3 +44,4 @@
}
}
}
+
diff --git a/app/code/Magento/BundleGraphQl/composer.json b/app/code/Magento/BundleGraphQl/composer.json
index 70a619cbf6837..06dc5f4a96ba0 100644
--- a/app/code/Magento/BundleGraphQl/composer.json
+++ b/app/code/Magento/BundleGraphQl/composer.json
@@ -2,23 +2,24 @@
"name": "magento/module-bundle-graph-ql",
"description": "N/A",
"type": "magento2-module",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/module-catalog": "*",
- "magento/module-bundle": "*",
- "magento/module-graph-ql": "*",
- "magento/module-catalog-graph-ql": "*",
- "magento/module-quote": "*",
- "magento/module-quote-graph-ql": "*",
- "magento/module-store": "*",
- "magento/module-sales": "*",
- "magento/module-sales-graph-ql": "*",
- "magento/framework": "*"
- },
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.5",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-bundle": "101.0.*",
+ "magento/module-graph-ql": "100.4.*",
+ "magento/module-catalog-graph-ql": "100.4.*",
+ "magento/module-quote": "101.2.*",
+ "magento/module-quote-graph-ql": "100.4.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-sales": "103.0.*",
+ "magento/module-sales-graph-ql": "100.4.*",
+ "magento/framework": "103.0.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -28,3 +29,4 @@
}
}
}
+
diff --git a/app/code/Magento/BundleImportExport/composer.json b/app/code/Magento/BundleImportExport/composer.json
index ff7d0acc7c48d..dc9786e65003d 100644
--- a/app/code/Magento/BundleImportExport/composer.json
+++ b/app/code/Magento/BundleImportExport/composer.json
@@ -1,24 +1,25 @@
{
"name": "magento/module-bundle-import-export",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.4",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-bundle": "*",
- "magento/module-store": "*",
- "magento/module-catalog": "*",
- "magento/module-catalog-import-export": "*",
- "magento/module-eav": "*",
- "magento/module-import-export": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-bundle": "101.0.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-catalog-import-export": "101.1.*",
+ "magento/module-eav": "102.1.*",
+ "magento/module-import-export": "101.0.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -28,3 +29,4 @@
}
}
}
+
diff --git a/app/code/Magento/CacheInvalidate/composer.json b/app/code/Magento/CacheInvalidate/composer.json
index c756a5fe602e9..bc179e2710bf3 100644
--- a/app/code/Magento/CacheInvalidate/composer.json
+++ b/app/code/Magento/CacheInvalidate/composer.json
@@ -1,19 +1,20 @@
{
"name": "magento/module-cache-invalidate",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.3",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-page-cache": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-page-cache": "100.4.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -23,3 +24,4 @@
}
}
}
+
diff --git a/app/code/Magento/Captcha/composer.json b/app/code/Magento/Captcha/composer.json
index d4b94dbb586c2..13ab1995709de 100644
--- a/app/code/Magento/Captcha/composer.json
+++ b/app/code/Magento/Captcha/composer.json
@@ -1,26 +1,27 @@
{
"name": "magento/module-captcha",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-backend": "*",
- "magento/module-checkout": "*",
- "magento/module-customer": "*",
- "magento/module-sales": "*",
- "magento/module-store": "*",
- "magento/module-authorization": "*",
+ "magento/framework": "103.0.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-checkout": "100.4.*",
+ "magento/module-customer": "103.0.*",
+ "magento/module-sales": "103.0.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-authorization": "100.4.*",
"laminas/laminas-captcha": "^2.12",
"laminas/laminas-db": "^2.13.4"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -30,3 +31,4 @@
}
}
}
+
diff --git a/app/code/Magento/CardinalCommerce/composer.json b/app/code/Magento/CardinalCommerce/composer.json
index 4c49c92cec1ea..d531c7f4634f1 100644
--- a/app/code/Magento/CardinalCommerce/composer.json
+++ b/app/code/Magento/CardinalCommerce/composer.json
@@ -1,21 +1,22 @@
{
"name": "magento/module-cardinal-commerce",
"description": "Provides a possibility to enable 3-D Secure 2.0 support for payment methods.",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.3",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-checkout": "*",
- "magento/module-payment": "*",
- "magento/module-store": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-checkout": "100.4.*",
+ "magento/module-payment": "100.4.*",
+ "magento/module-store": "101.1.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -25,3 +26,4 @@
}
}
}
+
diff --git a/app/code/Magento/Catalog/Test/Mftf/Section/StorefrontCategoryMainSection.xml b/app/code/Magento/Catalog/Test/Mftf/Section/StorefrontCategoryMainSection.xml
index f3a0919f6c728..cf419c8f27c00 100644
--- a/app/code/Magento/Catalog/Test/Mftf/Section/StorefrontCategoryMainSection.xml
+++ b/app/code/Magento/Catalog/Test/Mftf/Section/StorefrontCategoryMainSection.xml
@@ -40,5 +40,6 @@
+
diff --git a/app/code/Magento/Catalog/Test/Mftf/Test/AdminRestrictedUserAddCategoryFromProductPageTest.xml b/app/code/Magento/Catalog/Test/Mftf/Test/AdminRestrictedUserAddCategoryFromProductPageTest.xml
index 3d3c7f198d808..0dec58de66c3c 100644
--- a/app/code/Magento/Catalog/Test/Mftf/Test/AdminRestrictedUserAddCategoryFromProductPageTest.xml
+++ b/app/code/Magento/Catalog/Test/Mftf/Test/AdminRestrictedUserAddCategoryFromProductPageTest.xml
@@ -97,6 +97,7 @@
+
diff --git a/app/code/Magento/Catalog/composer.json b/app/code/Magento/Catalog/composer.json
index 6597e88e9d995..21cba47faf14a 100644
--- a/app/code/Magento/Catalog/composer.json
+++ b/app/code/Magento/Catalog/composer.json
@@ -1,48 +1,49 @@
{
"name": "magento/module-catalog",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "104.0.5-p1",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-authorization": "*",
- "magento/module-asynchronous-operations": "*",
- "magento/module-backend": "*",
- "magento/module-catalog-inventory": "*",
- "magento/module-catalog-rule": "*",
- "magento/module-catalog-url-rewrite": "*",
- "magento/module-checkout": "*",
- "magento/module-cms": "*",
- "magento/module-config": "*",
- "magento/module-customer": "*",
- "magento/module-directory": "*",
- "magento/module-eav": "*",
- "magento/module-indexer": "*",
- "magento/module-media-storage": "*",
- "magento/module-msrp": "*",
- "magento/module-page-cache": "*",
- "magento/module-product-alert": "*",
- "magento/module-quote": "*",
- "magento/module-store": "*",
- "magento/module-tax": "*",
- "magento/module-theme": "*",
- "magento/module-ui": "*",
- "magento/module-url-rewrite": "*",
- "magento/module-widget": "*",
- "magento/module-wishlist": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-authorization": "100.4.*",
+ "magento/module-asynchronous-operations": "100.4.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-catalog-inventory": "100.4.*",
+ "magento/module-catalog-rule": "101.2.*",
+ "magento/module-catalog-url-rewrite": "100.4.*",
+ "magento/module-checkout": "100.4.*",
+ "magento/module-cms": "104.0.*",
+ "magento/module-config": "101.2.*",
+ "magento/module-customer": "103.0.*",
+ "magento/module-directory": "100.4.*",
+ "magento/module-eav": "102.1.*",
+ "magento/module-indexer": "100.4.*",
+ "magento/module-media-storage": "100.4.*",
+ "magento/module-msrp": "100.4.*",
+ "magento/module-page-cache": "100.4.*",
+ "magento/module-product-alert": "100.4.*",
+ "magento/module-quote": "101.2.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-tax": "100.4.*",
+ "magento/module-theme": "101.1.*",
+ "magento/module-ui": "101.2.*",
+ "magento/module-url-rewrite": "102.0.*",
+ "magento/module-widget": "101.2.*",
+ "magento/module-wishlist": "101.2.*"
},
"suggest": {
- "magento/module-cookie": "*",
- "magento/module-sales": "*",
- "magento/module-catalog-sample-data": "*"
+ "magento/module-cookie": "100.4.*",
+ "magento/module-sales": "103.0.*",
+ "magento/module-catalog-sample-data": "Sample Data version: 100.4.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -52,3 +53,4 @@
}
}
}
+
diff --git a/app/code/Magento/CatalogAnalytics/composer.json b/app/code/Magento/CatalogAnalytics/composer.json
index a41a47fa4764b..2fb9f4fb021cf 100644
--- a/app/code/Magento/CatalogAnalytics/composer.json
+++ b/app/code/Magento/CatalogAnalytics/composer.json
@@ -1,17 +1,18 @@
{
"name": "magento/module-catalog-analytics",
"description": "N/A",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-catalog": "*",
- "magento/module-analytics": "*"
- },
"type": "magento2-module",
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.2",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/framework": "103.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-analytics": "100.4.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -21,3 +22,4 @@
}
}
}
+
diff --git a/app/code/Magento/CatalogCmsGraphQl/composer.json b/app/code/Magento/CatalogCmsGraphQl/composer.json
index cf9e76f3b2ea2..b32b4635745c3 100644
--- a/app/code/Magento/CatalogCmsGraphQl/composer.json
+++ b/app/code/Magento/CatalogCmsGraphQl/composer.json
@@ -2,21 +2,22 @@
"name": "magento/module-catalog-cms-graph-ql",
"description": "N/A",
"type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
+ "version": "100.4.1",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-catalog": "*",
- "magento/module-cms-graph-ql": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-cms-graph-ql": "100.4.*"
},
"suggest": {
- "magento/module-graph-ql": "*",
- "magento/module-cms": "*",
- "magento/module-catalog-graph-ql": "*"
+ "magento/module-graph-ql": "100.4.*",
+ "magento/module-cms": "104.0.*",
+ "magento/module-catalog-graph-ql": "100.4.*"
},
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -26,3 +27,4 @@
}
}
}
+
diff --git a/app/code/Magento/CatalogCustomerGraphQl/composer.json b/app/code/Magento/CatalogCustomerGraphQl/composer.json
index b1743ae964966..c7062a2d03e6a 100644
--- a/app/code/Magento/CatalogCustomerGraphQl/composer.json
+++ b/app/code/Magento/CatalogCustomerGraphQl/composer.json
@@ -2,17 +2,18 @@
"name": "magento/module-catalog-customer-graph-ql",
"description": "N/A",
"type": "magento2-module",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-catalog": "*",
- "magento/module-customer": "*",
- "magento/module-catalog-graph-ql": "*"
- },
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.4",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/framework": "103.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-customer": "103.0.*",
+ "magento/module-catalog-graph-ql": "100.4.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -22,3 +23,4 @@
}
}
}
+
diff --git a/app/code/Magento/CatalogGraphQl/composer.json b/app/code/Magento/CatalogGraphQl/composer.json
index c289f84a359ba..d7f4f0c44f901 100644
--- a/app/code/Magento/CatalogGraphQl/composer.json
+++ b/app/code/Magento/CatalogGraphQl/composer.json
@@ -2,28 +2,29 @@
"name": "magento/module-catalog-graph-ql",
"description": "N/A",
"type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
+ "version": "100.4.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/module-eav": "*",
- "magento/module-catalog": "*",
- "magento/module-catalog-inventory": "*",
- "magento/module-directory": "*",
- "magento/module-search": "*",
- "magento/module-store": "*",
- "magento/module-eav-graph-ql": "*",
- "magento/module-catalog-search": "*",
- "magento/framework": "*",
- "magento/module-graph-ql": "*",
- "magento/module-advanced-search": "*"
+ "magento/module-eav": "102.1.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-catalog-inventory": "100.4.*",
+ "magento/module-directory": "100.4.*",
+ "magento/module-search": "101.1.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-eav-graph-ql": "100.4.*",
+ "magento/module-catalog-search": "102.0.*",
+ "magento/framework": "103.0.*",
+ "magento/module-graph-ql": "100.4.*",
+ "magento/module-advanced-search": "100.4.*"
},
"suggest": {
- "magento/module-graph-ql-cache": "*",
- "magento/module-store-graph-ql": "*"
+ "magento/module-graph-ql-cache": "100.4.*",
+ "magento/module-store-graph-ql": "100.4.*"
},
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -33,3 +34,4 @@
}
}
}
+
diff --git a/app/code/Magento/CatalogImportExport/composer.json b/app/code/Magento/CatalogImportExport/composer.json
index dac8624086df0..130e27c8ba01f 100644
--- a/app/code/Magento/CatalogImportExport/composer.json
+++ b/app/code/Magento/CatalogImportExport/composer.json
@@ -1,29 +1,30 @@
{
"name": "magento/module-catalog-import-export",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "101.1.5",
"require": {
"php": "~7.4.0||~8.1.0",
"ext-ctype": "*",
- "magento/framework": "*",
- "magento/module-catalog": "*",
- "magento/module-catalog-inventory": "*",
- "magento/module-catalog-url-rewrite": "*",
- "magento/module-customer": "*",
- "magento/module-eav": "*",
- "magento/module-import-export": "*",
- "magento/module-media-storage": "*",
- "magento/module-store": "*",
- "magento/module-tax": "*",
- "magento/module-authorization": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-catalog-inventory": "100.4.*",
+ "magento/module-catalog-url-rewrite": "100.4.*",
+ "magento/module-customer": "103.0.*",
+ "magento/module-eav": "102.1.*",
+ "magento/module-import-export": "101.0.*",
+ "magento/module-media-storage": "100.4.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-tax": "100.4.*",
+ "magento/module-authorization": "100.4.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -33,3 +34,4 @@
}
}
}
+
diff --git a/app/code/Magento/CatalogInventory/composer.json b/app/code/Magento/CatalogInventory/composer.json
index 893de329628fa..778e1e61142c1 100644
--- a/app/code/Magento/CatalogInventory/composer.json
+++ b/app/code/Magento/CatalogInventory/composer.json
@@ -1,25 +1,26 @@
{
"name": "magento/module-catalog-inventory",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-catalog": "*",
- "magento/module-config": "*",
- "magento/module-customer": "*",
- "magento/module-eav": "*",
- "magento/module-quote": "*",
- "magento/module-store": "*",
- "magento/module-ui": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-config": "101.2.*",
+ "magento/module-customer": "103.0.*",
+ "magento/module-eav": "102.1.*",
+ "magento/module-quote": "101.2.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-ui": "101.2.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -30,3 +31,4 @@
},
"abandoned": "magento/inventory-metapackage"
}
+
diff --git a/app/code/Magento/CatalogInventoryGraphQl/composer.json b/app/code/Magento/CatalogInventoryGraphQl/composer.json
index 38685524d5346..b585dba99e69e 100644
--- a/app/code/Magento/CatalogInventoryGraphQl/composer.json
+++ b/app/code/Magento/CatalogInventoryGraphQl/composer.json
@@ -2,18 +2,19 @@
"name": "magento/module-catalog-inventory-graph-ql",
"description": "N/A",
"type": "magento2-module",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-store": "*",
- "magento/module-catalog": "*",
- "magento/module-catalog-inventory": "*",
- "magento/module-graph-ql": "*"
- },
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.2",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/framework": "103.0.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-catalog-inventory": "100.4.*",
+ "magento/module-graph-ql": "100.4.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -23,3 +24,4 @@
}
}
}
+
diff --git a/app/code/Magento/CatalogRule/composer.json b/app/code/Magento/CatalogRule/composer.json
index 531a12ac017ed..39e3fde80c33a 100644
--- a/app/code/Magento/CatalogRule/composer.json
+++ b/app/code/Magento/CatalogRule/composer.json
@@ -1,29 +1,30 @@
{
"name": "magento/module-catalog-rule",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "101.2.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-backend": "*",
- "magento/module-catalog": "*",
- "magento/module-customer": "*",
- "magento/module-eav": "*",
- "magento/module-rule": "*",
- "magento/module-store": "*",
- "magento/module-ui": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-customer": "103.0.*",
+ "magento/module-eav": "102.1.*",
+ "magento/module-rule": "100.4.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-ui": "101.2.*"
},
"suggest": {
- "magento/module-import-export": "*",
- "magento/module-catalog-rule-sample-data": "*"
+ "magento/module-import-export": "101.0.*",
+ "magento/module-catalog-rule-sample-data": "Sample Data version: 100.4.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -33,3 +34,4 @@
}
}
}
+
diff --git a/app/code/Magento/CatalogRuleConfigurable/composer.json b/app/code/Magento/CatalogRuleConfigurable/composer.json
index 68da972ae94f9..782229dd6daa3 100644
--- a/app/code/Magento/CatalogRuleConfigurable/composer.json
+++ b/app/code/Magento/CatalogRuleConfigurable/composer.json
@@ -1,25 +1,26 @@
{
"name": "magento/module-catalog-rule-configurable",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.4",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
+ "magento/framework": "103.0.*",
"magento/magento-composer-installer": "*",
- "magento/module-catalog": "*",
- "magento/module-catalog-rule": "*",
- "magento/module-configurable-product": "*"
+ "magento/module-catalog": "104.0.*",
+ "magento/module-catalog-rule": "101.2.*",
+ "magento/module-configurable-product": "100.4.*"
},
"suggest": {
- "magento/module-catalog-rule": "*"
+ "magento/module-catalog-rule": "101.2.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -29,3 +30,4 @@
}
}
}
+
diff --git a/app/code/Magento/CatalogRuleGraphQl/composer.json b/app/code/Magento/CatalogRuleGraphQl/composer.json
index 2c8c3ef20c96a..6bd7ef191d895 100644
--- a/app/code/Magento/CatalogRuleGraphQl/composer.json
+++ b/app/code/Magento/CatalogRuleGraphQl/composer.json
@@ -2,17 +2,18 @@
"name": "magento/module-catalog-rule-graph-ql",
"description": "N/A",
"type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
+ "version": "100.4.2",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*"
+ "magento/framework": "103.0.*"
},
"suggest": {
- "magento/module-catalog-rule": "*"
+ "magento/module-catalog-rule": "101.2.*"
},
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -22,3 +23,4 @@
}
}
}
+
diff --git a/app/code/Magento/CatalogSearch/composer.json b/app/code/Magento/CatalogSearch/composer.json
index 465d7daeebe18..1e9d7381a08e2 100644
--- a/app/code/Magento/CatalogSearch/composer.json
+++ b/app/code/Magento/CatalogSearch/composer.json
@@ -1,32 +1,33 @@
{
"name": "magento/module-catalog-search",
"description": "Catalog search",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "102.0.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-backend": "*",
- "magento/module-catalog": "*",
- "magento/module-indexer": "*",
- "magento/module-catalog-inventory": "*",
- "magento/module-customer": "*",
- "magento/module-directory": "*",
- "magento/module-eav": "*",
- "magento/module-search": "*",
- "magento/module-store": "*",
- "magento/module-theme": "*",
- "magento/module-ui": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-indexer": "100.4.*",
+ "magento/module-catalog-inventory": "100.4.*",
+ "magento/module-customer": "103.0.*",
+ "magento/module-directory": "100.4.*",
+ "magento/module-eav": "102.1.*",
+ "magento/module-search": "101.1.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-theme": "101.1.*",
+ "magento/module-ui": "101.2.*"
},
"suggest": {
- "magento/module-config": "*"
+ "magento/module-config": "101.2.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -36,3 +37,4 @@
}
}
}
+
diff --git a/app/code/Magento/CatalogUrlRewrite/composer.json b/app/code/Magento/CatalogUrlRewrite/composer.json
index ce409e2186faa..0d7de0896c3d8 100644
--- a/app/code/Magento/CatalogUrlRewrite/composer.json
+++ b/app/code/Magento/CatalogUrlRewrite/composer.json
@@ -1,29 +1,30 @@
{
"name": "magento/module-catalog-url-rewrite",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-backend": "*",
- "magento/module-catalog": "*",
- "magento/module-catalog-import-export": "*",
- "magento/module-eav": "*",
- "magento/module-import-export": "*",
- "magento/module-store": "*",
- "magento/module-ui": "*",
- "magento/module-url-rewrite": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-catalog-import-export": "101.1.*",
+ "magento/module-eav": "102.1.*",
+ "magento/module-import-export": "101.0.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-ui": "101.2.*",
+ "magento/module-url-rewrite": "102.0.*"
},
"suggest": {
- "magento/module-webapi": "*"
+ "magento/module-webapi": "100.4.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -33,3 +34,4 @@
}
}
}
+
diff --git a/app/code/Magento/CatalogUrlRewriteGraphQl/composer.json b/app/code/Magento/CatalogUrlRewriteGraphQl/composer.json
index 025234af6f865..d79c2ab17f611 100644
--- a/app/code/Magento/CatalogUrlRewriteGraphQl/composer.json
+++ b/app/code/Magento/CatalogUrlRewriteGraphQl/composer.json
@@ -2,23 +2,24 @@
"name": "magento/module-catalog-url-rewrite-graph-ql",
"description": "N/A",
"type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
+ "version": "100.4.3",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/module-store": "*",
- "magento/module-catalog": "*",
- "magento/module-catalog-graph-ql": "*",
- "magento/module-url-rewrite-graph-ql": "*",
- "magento/framework": "*"
+ "magento/module-store": "101.1.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-catalog-graph-ql": "100.4.*",
+ "magento/module-url-rewrite-graph-ql": "100.4.*",
+ "magento/framework": "103.0.*"
},
"suggest": {
- "magento/module-catalog-url-rewrite": "*",
- "magento/module-catalog-graph-ql": "*",
- "magento/module-url-rewrite-graph-ql": "*"
+ "magento/module-catalog-url-rewrite": "100.4.*",
+ "magento/module-catalog-graph-ql": "100.4.*",
+ "magento/module-url-rewrite-graph-ql": "100.4.*"
},
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -28,3 +29,4 @@
}
}
}
+
diff --git a/app/code/Magento/CatalogWidget/Test/Mftf/Test/StorefrontProductGridUIUpdatesOnDesktopTest.xml b/app/code/Magento/CatalogWidget/Test/Mftf/Test/StorefrontProductGridUIUpdatesOnDesktopTest.xml
index 5590aa1cdcefa..e833c8e72f47a 100644
--- a/app/code/Magento/CatalogWidget/Test/Mftf/Test/StorefrontProductGridUIUpdatesOnDesktopTest.xml
+++ b/app/code/Magento/CatalogWidget/Test/Mftf/Test/StorefrontProductGridUIUpdatesOnDesktopTest.xml
@@ -61,6 +61,7 @@
+
diff --git a/app/code/Magento/CatalogWidget/composer.json b/app/code/Magento/CatalogWidget/composer.json
index 33c5e3b3ba3ee..12cc7ed087a1e 100644
--- a/app/code/Magento/CatalogWidget/composer.json
+++ b/app/code/Magento/CatalogWidget/composer.json
@@ -1,27 +1,28 @@
{
"name": "magento/module-catalog-widget",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.5-p1",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-backend": "*",
- "magento/module-catalog": "*",
- "magento/module-customer": "*",
- "magento/module-eav": "*",
- "magento/module-rule": "*",
- "magento/module-store": "*",
- "magento/module-widget": "*",
- "magento/module-wishlist": "*",
- "magento/module-theme": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-customer": "103.0.*",
+ "magento/module-eav": "102.1.*",
+ "magento/module-rule": "100.4.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-widget": "101.2.*",
+ "magento/module-wishlist": "101.2.*",
+ "magento/module-theme": "101.1.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -31,3 +32,4 @@
}
}
}
+
diff --git a/app/code/Magento/Checkout/composer.json b/app/code/Magento/Checkout/composer.json
index f277184d8986b..7b0b9682d3fa1 100644
--- a/app/code/Magento/Checkout/composer.json
+++ b/app/code/Magento/Checkout/composer.json
@@ -1,41 +1,42 @@
{
"name": "magento/module-checkout",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-captcha": "*",
- "magento/module-catalog": "*",
- "magento/module-catalog-inventory": "*",
- "magento/module-config": "*",
- "magento/module-customer": "*",
- "magento/module-directory": "*",
- "magento/module-eav": "*",
- "magento/module-msrp": "*",
- "magento/module-page-cache": "*",
- "magento/module-payment": "*",
- "magento/module-quote": "*",
- "magento/module-sales": "*",
- "magento/module-sales-rule": "*",
- "magento/module-security": "*",
- "magento/module-shipping": "*",
- "magento/module-store": "*",
- "magento/module-tax": "*",
- "magento/module-theme": "*",
- "magento/module-ui": "*",
- "magento/module-authorization": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-captcha": "100.4.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-catalog-inventory": "100.4.*",
+ "magento/module-config": "101.2.*",
+ "magento/module-customer": "103.0.*",
+ "magento/module-directory": "100.4.*",
+ "magento/module-eav": "102.1.*",
+ "magento/module-msrp": "100.4.*",
+ "magento/module-page-cache": "100.4.*",
+ "magento/module-payment": "100.4.*",
+ "magento/module-quote": "101.2.*",
+ "magento/module-sales": "103.0.*",
+ "magento/module-sales-rule": "101.2.*",
+ "magento/module-security": "100.4.*",
+ "magento/module-shipping": "100.4.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-tax": "100.4.*",
+ "magento/module-theme": "101.1.*",
+ "magento/module-ui": "101.2.*",
+ "magento/module-authorization": "100.4.*"
},
"suggest": {
- "magento/module-cookie": "*"
+ "magento/module-cookie": "100.4.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -45,3 +46,4 @@
}
}
}
+
diff --git a/app/code/Magento/CheckoutAgreements/composer.json b/app/code/Magento/CheckoutAgreements/composer.json
index 753bef25e3e64..a1526eb506168 100644
--- a/app/code/Magento/CheckoutAgreements/composer.json
+++ b/app/code/Magento/CheckoutAgreements/composer.json
@@ -1,22 +1,23 @@
{
"name": "magento/module-checkout-agreements",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.4",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-backend": "*",
- "magento/module-checkout": "*",
- "magento/module-quote": "*",
- "magento/module-store": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-checkout": "100.4.*",
+ "magento/module-quote": "101.2.*",
+ "magento/module-store": "101.1.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -26,3 +27,4 @@
}
}
}
+
diff --git a/app/code/Magento/CheckoutAgreementsGraphQl/composer.json b/app/code/Magento/CheckoutAgreementsGraphQl/composer.json
index de6bc855e7847..f75215e0e3e1f 100644
--- a/app/code/Magento/CheckoutAgreementsGraphQl/composer.json
+++ b/app/code/Magento/CheckoutAgreementsGraphQl/composer.json
@@ -2,19 +2,20 @@
"name": "magento/module-checkout-agreements-graph-ql",
"description": "N/A",
"type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
+ "version": "100.4.1",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-store": "*",
- "magento/module-checkout-agreements": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-checkout-agreements": "100.4.*"
},
"suggest": {
- "magento/module-graph-ql": "*"
+ "magento/module-graph-ql": "100.4.*"
},
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -24,3 +25,4 @@
}
}
}
+
diff --git a/app/code/Magento/Cms/Controller/Noroute/Index.php b/app/code/Magento/Cms/Controller/Noroute/Index.php
index b30beae73dce1..5475e7960dd26 100644
--- a/app/code/Magento/Cms/Controller/Noroute/Index.php
+++ b/app/code/Magento/Cms/Controller/Noroute/Index.php
@@ -6,15 +6,17 @@
*/
namespace Magento\Cms\Controller\Noroute;
+use Magento\Framework\Controller\Result\ForwardFactory;
+
/**
* @SuppressWarnings(PHPMD.AllPurposeAction)
*/
class Index extends \Magento\Framework\App\Action\Action
{
/**
- * @var \Magento\Framework\Controller\Result\ForwardFactory
+ * @var ForwardFactory
*/
- protected $resultForwardFactory;
+ protected ForwardFactory $resultForwardFactory;
/**
* @param \Magento\Framework\App\Action\Context $context
@@ -48,6 +50,7 @@ public function execute()
if ($resultPage) {
$resultPage->setStatusHeader(404, '1.1', 'Not Found');
$resultPage->setHeader('Status', '404 File not found');
+ $resultPage->setHeader('Cache-Control', 'no-store, no-cache, must-revalidate, max-age=0', true);
return $resultPage;
} else {
/** @var \Magento\Framework\Controller\Result\Forward $resultForward */
diff --git a/app/code/Magento/Cms/Test/Unit/Controller/Noroute/IndexTest.php b/app/code/Magento/Cms/Test/Unit/Controller/Noroute/IndexTest.php
index 665b79fdf48be..6d4dcfc0711df 100644
--- a/app/code/Magento/Cms/Test/Unit/Controller/Noroute/IndexTest.php
+++ b/app/code/Magento/Cms/Test/Unit/Controller/Noroute/IndexTest.php
@@ -29,17 +29,17 @@ class IndexTest extends TestCase
/**
* @var Index
*/
- protected $_controller;
+ protected Index $_controller;
/**
* @var MockObject
*/
- protected $_cmsHelperMock;
+ protected MockObject $_cmsHelperMock;
/**
* @var MockObject
*/
- protected $_requestMock;
+ protected MockObject $_requestMock;
/**
* @var ForwardFactory|MockObject
@@ -121,8 +121,10 @@ public function testExecuteResultPage(): void
->willReturn($this->resultPageMock);
$this->resultPageMock
->method('setHeader')
- ->with('Status', '404 File not found')
- ->willReturn($this->resultPageMock);
+ ->withConsecutive(
+ ['Status', '404 File not found'],
+ ['Cache-Control', 'no-store, no-cache, must-revalidate, max-age=0']
+ )->willReturn($this->resultPageMock);
$this->_cmsHelperMock->expects(
$this->once()
)->method(
diff --git a/app/code/Magento/Cms/composer.json b/app/code/Magento/Cms/composer.json
index b3b2ba31db37b..43140a669b59f 100644
--- a/app/code/Magento/Cms/composer.json
+++ b/app/code/Magento/Cms/composer.json
@@ -1,30 +1,31 @@
{
"name": "magento/module-cms",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "104.0.5-p1",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-backend": "*",
- "magento/module-catalog": "*",
- "magento/module-email": "*",
- "magento/module-media-storage": "*",
- "magento/module-store": "*",
- "magento/module-theme": "*",
- "magento/module-ui": "*",
- "magento/module-variable": "*",
- "magento/module-widget": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-email": "101.1.*",
+ "magento/module-media-storage": "100.4.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-theme": "101.1.*",
+ "magento/module-ui": "101.2.*",
+ "magento/module-variable": "100.4.*",
+ "magento/module-widget": "101.2.*"
},
"suggest": {
- "magento/module-cms-sample-data": "*"
+ "magento/module-cms-sample-data": "Sample Data version: 100.4.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -34,3 +35,4 @@
}
}
}
+
diff --git a/app/code/Magento/CmsGraphQl/composer.json b/app/code/Magento/CmsGraphQl/composer.json
index b2550344299fa..31cdf1b9242e7 100644
--- a/app/code/Magento/CmsGraphQl/composer.json
+++ b/app/code/Magento/CmsGraphQl/composer.json
@@ -2,22 +2,23 @@
"name": "magento/module-cms-graph-ql",
"description": "N/A",
"type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
+ "version": "100.4.2",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-cms": "*",
- "magento/module-widget": "*",
- "magento/module-store": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-cms": "104.0.*",
+ "magento/module-widget": "101.2.*",
+ "magento/module-store": "101.1.*"
},
"suggest": {
- "magento/module-graph-ql": "*",
- "magento/module-graph-ql-cache": "*",
- "magento/module-store-graph-ql": "*"
+ "magento/module-graph-ql": "100.4.*",
+ "magento/module-graph-ql-cache": "100.4.*",
+ "magento/module-store-graph-ql": "100.4.*"
},
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -27,3 +28,4 @@
}
}
}
+
diff --git a/app/code/Magento/CmsUrlRewrite/composer.json b/app/code/Magento/CmsUrlRewrite/composer.json
index 8fb9bbfff22e2..635ee06491d27 100644
--- a/app/code/Magento/CmsUrlRewrite/composer.json
+++ b/app/code/Magento/CmsUrlRewrite/composer.json
@@ -1,21 +1,22 @@
{
"name": "magento/module-cms-url-rewrite",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.4",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-cms": "*",
- "magento/module-store": "*",
- "magento/module-url-rewrite": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-cms": "104.0.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-url-rewrite": "102.0.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -25,3 +26,4 @@
}
}
}
+
diff --git a/app/code/Magento/CmsUrlRewriteGraphQl/composer.json b/app/code/Magento/CmsUrlRewriteGraphQl/composer.json
index 70a598d26d574..a9d224eeb6da3 100644
--- a/app/code/Magento/CmsUrlRewriteGraphQl/composer.json
+++ b/app/code/Magento/CmsUrlRewriteGraphQl/composer.json
@@ -2,22 +2,23 @@
"name": "magento/module-cms-url-rewrite-graph-ql",
"description": "N/A",
"type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
+ "version": "100.4.3",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-cms": "*",
- "magento/module-store": "*",
- "magento/module-url-rewrite-graph-ql": "*",
- "magento/module-cms-graph-ql": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-cms": "104.0.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-url-rewrite-graph-ql": "100.4.*",
+ "magento/module-cms-graph-ql": "100.4.*"
},
"suggest": {
- "magento/module-cms-url-rewrite": "*",
- "magento/module-catalog-graph-ql": "*"
+ "magento/module-cms-url-rewrite": "100.4.*",
+ "magento/module-catalog-graph-ql": "100.4.*"
},
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -27,3 +28,4 @@
}
}
}
+
diff --git a/app/code/Magento/CompareListGraphQl/composer.json b/app/code/Magento/CompareListGraphQl/composer.json
index e8fb5d588852e..bae7c7a6e3769 100644
--- a/app/code/Magento/CompareListGraphQl/composer.json
+++ b/app/code/Magento/CompareListGraphQl/composer.json
@@ -2,16 +2,17 @@
"name": "magento/module-compare-list-graph-ql",
"description": "N/A",
"type": "magento2-module",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-catalog": "*",
- "magento/module-customer": "*"
- },
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.1",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/framework": "103.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-customer": "103.0.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -21,3 +22,4 @@
}
}
}
+
diff --git a/app/code/Magento/Config/composer.json b/app/code/Magento/Config/composer.json
index 61100e6336c27..7417d30adc6b9 100644
--- a/app/code/Magento/Config/composer.json
+++ b/app/code/Magento/Config/composer.json
@@ -1,25 +1,26 @@
{
"name": "magento/module-config",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "101.2.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-backend": "*",
- "magento/module-cron": "*",
- "magento/module-deploy": "*",
- "magento/module-directory": "*",
- "magento/module-email": "*",
- "magento/module-media-storage": "*",
- "magento/module-store": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-cron": "100.4.*",
+ "magento/module-deploy": "100.4.*",
+ "magento/module-directory": "100.4.*",
+ "magento/module-email": "101.1.*",
+ "magento/module-media-storage": "100.4.*",
+ "magento/module-store": "101.1.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -29,3 +30,4 @@
}
}
}
+
diff --git a/app/code/Magento/ConfigurableImportExport/composer.json b/app/code/Magento/ConfigurableImportExport/composer.json
index 98205def6a799..687fcea6d2c26 100644
--- a/app/code/Magento/ConfigurableImportExport/composer.json
+++ b/app/code/Magento/ConfigurableImportExport/composer.json
@@ -1,24 +1,25 @@
{
"name": "magento/module-configurable-import-export",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.3",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-catalog": "*",
- "magento/module-catalog-import-export": "*",
- "magento/module-configurable-product": "*",
- "magento/module-eav": "*",
- "magento/module-import-export": "*",
- "magento/module-store": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-catalog-import-export": "101.1.*",
+ "magento/module-configurable-product": "100.4.*",
+ "magento/module-eav": "102.1.*",
+ "magento/module-import-export": "101.0.*",
+ "magento/module-store": "101.1.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -28,3 +29,4 @@
}
}
}
+
diff --git a/app/code/Magento/ConfigurableProduct/Test/Mftf/ActionGroup/CreateNewAttributeActionGroup.xml b/app/code/Magento/ConfigurableProduct/Test/Mftf/ActionGroup/CreateNewAttributeActionGroup.xml
index 9925aba09fb82..0f0ea705971ec 100644
--- a/app/code/Magento/ConfigurableProduct/Test/Mftf/ActionGroup/CreateNewAttributeActionGroup.xml
+++ b/app/code/Magento/ConfigurableProduct/Test/Mftf/ActionGroup/CreateNewAttributeActionGroup.xml
@@ -51,6 +51,7 @@
+
diff --git a/app/code/Magento/ConfigurableProduct/Test/Mftf/Data/ConfigurableProductAttributeNameDesignData.xml b/app/code/Magento/ConfigurableProduct/Test/Mftf/Data/ConfigurableProductAttributeNameDesignData.xml
index 0018f5996c9bc..ec8fc99b46bb3 100644
--- a/app/code/Magento/ConfigurableProduct/Test/Mftf/Data/ConfigurableProductAttributeNameDesignData.xml
+++ b/app/code/Magento/ConfigurableProduct/Test/Mftf/Data/ConfigurableProductAttributeNameDesignData.xml
@@ -12,7 +12,7 @@
Shoes
60
100
- design
+ design123
red
red123
blue
diff --git a/app/code/Magento/ConfigurableProduct/Test/Mftf/Section/ConfigurableProductAttributeNameDesignSection/CatalogProductsSection.xml b/app/code/Magento/ConfigurableProduct/Test/Mftf/Section/ConfigurableProductAttributeNameDesignSection/CatalogProductsSection.xml
index fb71d6cbda2a8..df3fffb6f716c 100644
--- a/app/code/Magento/ConfigurableProduct/Test/Mftf/Section/ConfigurableProductAttributeNameDesignSection/CatalogProductsSection.xml
+++ b/app/code/Magento/ConfigurableProduct/Test/Mftf/Section/ConfigurableProductAttributeNameDesignSection/CatalogProductsSection.xml
@@ -14,7 +14,7 @@
-
+
diff --git a/app/code/Magento/ConfigurableProduct/Test/Mftf/Section/ConfigurableProductAttributeNameDesignSection/ConfigurableProductSection.xml b/app/code/Magento/ConfigurableProduct/Test/Mftf/Section/ConfigurableProductAttributeNameDesignSection/ConfigurableProductSection.xml
index 8099f30941f7d..437411d7c041a 100644
--- a/app/code/Magento/ConfigurableProduct/Test/Mftf/Section/ConfigurableProductAttributeNameDesignSection/ConfigurableProductSection.xml
+++ b/app/code/Magento/ConfigurableProduct/Test/Mftf/Section/ConfigurableProductAttributeNameDesignSection/ConfigurableProductSection.xml
@@ -12,7 +12,7 @@
-
+
diff --git a/app/code/Magento/ConfigurableProduct/composer.json b/app/code/Magento/ConfigurableProduct/composer.json
index 67b1ad2b2ed33..aa3c5b8e86cd9 100644
--- a/app/code/Magento/ConfigurableProduct/composer.json
+++ b/app/code/Magento/ConfigurableProduct/composer.json
@@ -1,38 +1,39 @@
{
"name": "magento/module-configurable-product",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.5-p1",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-backend": "*",
- "magento/module-catalog": "*",
- "magento/module-catalog-inventory": "*",
- "magento/module-checkout": "*",
- "magento/module-customer": "*",
- "magento/module-eav": "*",
- "magento/module-media-storage": "*",
- "magento/module-quote": "*",
- "magento/module-store": "*",
- "magento/module-ui": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-catalog-inventory": "100.4.*",
+ "magento/module-checkout": "100.4.*",
+ "magento/module-customer": "103.0.*",
+ "magento/module-eav": "102.1.*",
+ "magento/module-media-storage": "100.4.*",
+ "magento/module-quote": "101.2.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-ui": "101.2.*"
},
"suggest": {
- "magento/module-msrp": "*",
- "magento/module-webapi": "*",
- "magento/module-sales": "*",
- "magento/module-sales-rule": "*",
- "magento/module-product-video": "*",
- "magento/module-configurable-sample-data": "*",
- "magento/module-product-links-sample-data": "*",
- "magento/module-tax": "*"
+ "magento/module-msrp": "100.4.*",
+ "magento/module-webapi": "100.4.*",
+ "magento/module-sales": "103.0.*",
+ "magento/module-sales-rule": "101.2.*",
+ "magento/module-product-video": "100.4.*",
+ "magento/module-configurable-sample-data": "Sample Data version: 100.4.*",
+ "magento/module-product-links-sample-data": "Sample Data version: 100.4.*",
+ "magento/module-tax": "100.4.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -42,3 +43,4 @@
}
}
}
+
diff --git a/app/code/Magento/ConfigurableProductGraphQl/composer.json b/app/code/Magento/ConfigurableProductGraphQl/composer.json
index b839227511d88..0c742439aa66d 100644
--- a/app/code/Magento/ConfigurableProductGraphQl/composer.json
+++ b/app/code/Magento/ConfigurableProductGraphQl/composer.json
@@ -2,21 +2,22 @@
"name": "magento/module-configurable-product-graph-ql",
"description": "N/A",
"type": "magento2-module",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/module-catalog": "*",
- "magento/module-configurable-product": "*",
- "magento/module-graph-ql": "*",
- "magento/module-catalog-graph-ql": "*",
- "magento/module-quote": "*",
- "magento/module-quote-graph-ql": "*",
- "magento/module-catalog-inventory": "*",
- "magento/framework": "*"
- },
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.5",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-configurable-product": "100.4.*",
+ "magento/module-graph-ql": "100.4.*",
+ "magento/module-catalog-graph-ql": "100.4.*",
+ "magento/module-quote": "101.2.*",
+ "magento/module-quote-graph-ql": "100.4.*",
+ "magento/module-catalog-inventory": "100.4.*",
+ "magento/framework": "103.0.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -26,3 +27,4 @@
}
}
}
+
diff --git a/app/code/Magento/ConfigurableProductSales/composer.json b/app/code/Magento/ConfigurableProductSales/composer.json
index 55b2e78bd24d2..4256442b87ac1 100644
--- a/app/code/Magento/ConfigurableProductSales/composer.json
+++ b/app/code/Magento/ConfigurableProductSales/composer.json
@@ -1,22 +1,23 @@
{
"name": "magento/module-configurable-product-sales",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.2",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-catalog": "*",
- "magento/module-sales": "*",
- "magento/module-store": "*",
- "magento/module-configurable-product": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-sales": "103.0.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-configurable-product": "100.4.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -26,3 +27,4 @@
}
}
}
+
diff --git a/app/code/Magento/Contact/composer.json b/app/code/Magento/Contact/composer.json
index 00ea8f865928d..55e8dae73c64d 100644
--- a/app/code/Magento/Contact/composer.json
+++ b/app/code/Magento/Contact/composer.json
@@ -1,22 +1,23 @@
{
"name": "magento/module-contact",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.4",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-cms": "*",
- "magento/module-config": "*",
- "magento/module-customer": "*",
- "magento/module-store": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-cms": "104.0.*",
+ "magento/module-config": "101.2.*",
+ "magento/module-customer": "103.0.*",
+ "magento/module-store": "101.1.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -26,3 +27,4 @@
}
}
}
+
diff --git a/app/code/Magento/Cookie/composer.json b/app/code/Magento/Cookie/composer.json
index 6a5752792f7fb..6e0e1fc8ef258 100644
--- a/app/code/Magento/Cookie/composer.json
+++ b/app/code/Magento/Cookie/composer.json
@@ -1,22 +1,23 @@
{
"name": "magento/module-cookie",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-store": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-store": "101.1.*"
},
"suggest": {
- "magento/module-backend": "*"
+ "magento/module-backend": "102.0.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -26,3 +27,4 @@
}
}
}
+
diff --git a/app/code/Magento/Cron/composer.json b/app/code/Magento/Cron/composer.json
index 0468a95b457c0..f6237ab319adf 100644
--- a/app/code/Magento/Cron/composer.json
+++ b/app/code/Magento/Cron/composer.json
@@ -1,22 +1,23 @@
{
"name": "magento/module-cron",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-store": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-store": "101.1.*"
},
"suggest": {
- "magento/module-config": "*"
+ "magento/module-config": "101.2.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -26,3 +27,4 @@
}
}
}
+
diff --git a/app/code/Magento/Csp/composer.json b/app/code/Magento/Csp/composer.json
index 2079a30d92068..cd5024361c709 100644
--- a/app/code/Magento/Csp/composer.json
+++ b/app/code/Magento/Csp/composer.json
@@ -1,19 +1,20 @@
{
"name": "magento/module-csp",
"description": "CSP module enables Content Security Policies for Magento",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.4",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-store": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-store": "101.1.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -23,3 +24,4 @@
}
}
}
+
diff --git a/app/code/Magento/CurrencySymbol/composer.json b/app/code/Magento/CurrencySymbol/composer.json
index 4f6854cbee185..5023f810d9cd3 100644
--- a/app/code/Magento/CurrencySymbol/composer.json
+++ b/app/code/Magento/CurrencySymbol/composer.json
@@ -1,23 +1,24 @@
{
"name": "magento/module-currency-symbol",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.3",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-backend": "*",
- "magento/module-config": "*",
- "magento/module-directory": "*",
- "magento/module-page-cache": "*",
- "magento/module-store": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-config": "101.2.*",
+ "magento/module-directory": "100.4.*",
+ "magento/module-page-cache": "100.4.*",
+ "magento/module-store": "101.1.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -27,3 +28,4 @@
}
}
}
+
diff --git a/app/code/Magento/Customer/Controller/Account/Confirm.php b/app/code/Magento/Customer/Controller/Account/Confirm.php
index 2fc6ed4d422fb..d215a935545eb 100644
--- a/app/code/Magento/Customer/Controller/Account/Confirm.php
+++ b/app/code/Magento/Customer/Controller/Account/Confirm.php
@@ -1,9 +1,10 @@
session = $customerSession;
$this->scopeConfig = $scopeConfig;
@@ -102,13 +114,13 @@ public function __construct(
$this->customerRepository = $customerRepository;
$this->addressHelper = $addressHelper;
$this->urlModel = $urlFactory->create();
+ $this->customerLogger = $customerLogger ?? ObjectManager::getInstance()->get(CustomerLogger::class);
parent::__construct($context);
}
/**
* Retrieve cookie manager
*
- * @deprecated 101.0.0
* @return \Magento\Framework\Stdlib\Cookie\PhpCookieManager
*/
private function getCookieManager()
@@ -124,7 +136,6 @@ private function getCookieManager()
/**
* Retrieve cookie metadata factory
*
- * @deprecated 101.0.0
* @return \Magento\Framework\Stdlib\Cookie\CookieMetadataFactory
*/
private function getCookieMetadataFactory()
@@ -152,7 +163,7 @@ public function execute()
return $resultRedirect;
}
- $customerId = $this->getRequest()->getParam('id', false);
+ $customerId = $this->getCustomerId();
$key = $this->getRequest()->getParam('key', false);
if (empty($customerId) || empty($key)) {
$this->messageManager->addErrorMessage(__('Bad request.'));
@@ -164,13 +175,19 @@ public function execute()
// log in and send greeting email
$customerEmail = $this->customerRepository->getById($customerId)->getEmail();
$customer = $this->customerAccountManagement->activate($customerEmail, $key);
+ $successMessage = $this->getSuccessMessage();
$this->session->setCustomerDataAsLoggedIn($customer);
+
if ($this->getCookieManager()->getCookie('mage-cache-sessid')) {
$metadata = $this->getCookieMetadataFactory()->createCookieMetadata();
$metadata->setPath('/');
$this->getCookieManager()->deleteCookie('mage-cache-sessid', $metadata);
}
- $this->messageManager->addSuccess($this->getSuccessMessage());
+
+ if ($successMessage) {
+ $this->messageManager->addSuccess($successMessage);
+ }
+
$resultRedirect->setUrl($this->getSuccessRedirect());
return $resultRedirect;
} catch (StateException $e) {
@@ -183,33 +200,41 @@ public function execute()
return $resultRedirect->setUrl($this->_redirect->error($url));
}
+ /**
+ * Returns customer id from request
+ *
+ * @return int
+ */
+ private function getCustomerId(): int
+ {
+ return (int)$this->getRequest()->getParam('id', 0);
+ }
+
/**
* Retrieve success message
*
- * @return string
+ * @return Phrase|null
+ * @throws NoSuchEntityException
*/
protected function getSuccessMessage()
{
if ($this->addressHelper->isVatValidationEnabled()) {
- if ($this->addressHelper->getTaxCalculationAddressType() == Address::TYPE_SHIPPING) {
- // @codingStandardsIgnoreStart
- $message = __(
- 'If you are a registered VAT customer, please click here to enter your shipping address for proper VAT calculation.',
- $this->urlModel->getUrl('customer/address/edit')
- );
- // @codingStandardsIgnoreEnd
- } else {
- // @codingStandardsIgnoreStart
- $message = __(
- 'If you are a registered VAT customer, please click here to enter your billing address for proper VAT calculation.',
- $this->urlModel->getUrl('customer/address/edit')
- );
- // @codingStandardsIgnoreEnd
- }
- } else {
- $message = __('Thank you for registering with %1.', $this->storeManager->getStore()->getFrontendName());
+ return __(
+ $this->addressHelper->getTaxCalculationAddressType() == Address::TYPE_SHIPPING
+ ? 'If you are a registered VAT customer, please click here to enter your '
+ .'shipping address for proper VAT calculation.'
+ :'If you are a registered VAT customer, please click here to enter your '
+ .'billing address for proper VAT calculation.',
+ $this->urlModel->getUrl('customer/address/edit')
+ );
}
- return $message;
+
+ $customerId = $this->getCustomerId();
+ if ($customerId && $this->customerLogger->get($customerId)->getLastLoginAt()) {
+ return null;
+ }
+
+ return __('Thank you for registering with %1.', $this->storeManager->getStore()->getFrontendName());
}
/**
diff --git a/app/code/Magento/Customer/Controller/Account/EditPost.php b/app/code/Magento/Customer/Controller/Account/EditPost.php
index d616c03be6bd0..085b4ab2d3fd9 100644
--- a/app/code/Magento/Customer/Controller/Account/EditPost.php
+++ b/app/code/Magento/Customer/Controller/Account/EditPost.php
@@ -1,6 +1,5 @@
session = $customerSession;
- $this->customerAccountManagement = $customerAccountManagement;
+ $this->accountManagement = $accountManagement;
$this->customerRepository = $customerRepository;
$this->formKeyValidator = $formKeyValidator;
$this->customerExtractor = $customerExtractor;
@@ -143,6 +161,9 @@ public function __construct(
$this->addressRegistry = $addressRegistry ?: ObjectManager::getInstance()->get(AddressRegistry::class);
$this->filesystem = $filesystem ?: ObjectManager::getInstance()->get(Filesystem::class);
$this->sessionCleaner = $sessionCleaner ?: ObjectManager::getInstance()->get(SessionCleanerInterface::class);
+ $this->accountConfirmation = $accountConfirmation ?: ObjectManager::getInstance()
+ ->get(AccountConfirmation::class);
+ $this->customerUrl = $customerUrl ?: ObjectManager::getInstance()->get(Url::class);
}
/**
@@ -164,7 +185,6 @@ private function getAuthentication()
* Get email notification
*
* @return EmailNotificationInterface
- * @deprecated 100.1.0
*/
private function getEmailNotification()
{
@@ -180,7 +200,6 @@ private function getEmailNotification()
*/
public function createCsrfValidationException(RequestInterface $request): ?InvalidRequestException
{
- /** @var Redirect $resultRedirect */
$resultRedirect = $this->resultRedirectFactory->create();
$resultRedirect->setPath('*/*/edit');
@@ -203,50 +222,49 @@ public function validateForCsrf(RequestInterface $request): ?bool
*
* @return Redirect
* @SuppressWarnings(PHPMD.CyclomaticComplexity)
+ * @throws SessionException
*/
public function execute()
{
- /** @var Redirect $resultRedirect */
$resultRedirect = $this->resultRedirectFactory->create();
$validFormKey = $this->formKeyValidator->validate($this->getRequest());
if ($validFormKey && $this->getRequest()->isPost()) {
- $currentCustomerDataObject = $this->getCustomerDataObject($this->session->getCustomerId());
- $customerCandidateDataObject = $this->populateNewCustomerDataObject(
- $this->_request,
- $currentCustomerDataObject
- );
+ $customer = $this->getCustomerDataObject($this->session->getCustomerId());
+ $customerCandidate = $this->populateNewCustomerDataObject($this->_request, $customer);
$attributeToDelete = $this->_request->getParam('delete_attribute_value');
if ($attributeToDelete !== null) {
- $this->deleteCustomerFileAttribute(
- $customerCandidateDataObject,
- $attributeToDelete
- );
+ $this->deleteCustomerFileAttribute($customerCandidate, $attributeToDelete);
}
try {
// whether a customer enabled change email option
- $isEmailChanged = $this->processChangeEmailRequest($currentCustomerDataObject);
+ $isEmailChanged = $this->processChangeEmailRequest($customer);
// whether a customer enabled change password option
- $isPasswordChanged = $this->changeCustomerPassword($currentCustomerDataObject->getEmail());
+ $isPasswordChanged = $this->changeCustomerPassword($customer->getEmail());
// No need to validate customer address while editing customer profile
- $this->disableAddressValidation($customerCandidateDataObject);
+ $this->disableAddressValidation($customerCandidate);
+
+ $this->customerRepository->save($customerCandidate);
+ $updatedCustomer = $this->customerRepository->getById($customerCandidate->getId());
- $this->customerRepository->save($customerCandidateDataObject);
$this->getEmailNotification()->credentialsChanged(
- $customerCandidateDataObject,
- $currentCustomerDataObject->getEmail(),
+ $updatedCustomer,
+ $customer->getEmail(),
$isPasswordChanged
);
- $this->dispatchSuccessEvent($customerCandidateDataObject);
+
+ $this->dispatchSuccessEvent($updatedCustomer);
$this->messageManager->addSuccessMessage(__('You saved the account information.'));
// logout from current session if password or email changed.
if ($isPasswordChanged || $isEmailChanged) {
$this->session->logout();
$this->session->start();
+ $this->addComplexSuccessMessage($customer, $updatedCustomer);
+
return $resultRedirect->setPath('customer/account/login');
}
return $resultRedirect->setPath('customer/account');
@@ -276,13 +294,32 @@ public function execute()
$this->session->setCustomerFormData($this->getRequest()->getPostValue());
}
- /** @var Redirect $resultRedirect */
$resultRedirect = $this->resultRedirectFactory->create();
$resultRedirect->setPath('*/*/edit');
return $resultRedirect;
}
+ /**
+ * Adds a complex success message if email confirmation is required
+ *
+ * @param CustomerInterface $outdatedCustomer
+ * @param CustomerInterface $updatedCustomer
+ * @throws LocalizedException
+ */
+ private function addComplexSuccessMessage(
+ CustomerInterface $outdatedCustomer,
+ CustomerInterface $updatedCustomer
+ ): void {
+ if (($outdatedCustomer->getEmail() !== $updatedCustomer->getEmail())
+ && $this->accountConfirmation->isCustomerEmailChangedConfirmRequired($updatedCustomer)) {
+ $this->messageManager->addComplexSuccessMessage(
+ 'confirmAccountSuccessMessage',
+ ['url' => $this->customerUrl->getEmailConfirmationUrl($updatedCustomer->getEmail())]
+ );
+ }
+ }
+
/**
* Account editing action completed successfully event
*
@@ -303,6 +340,8 @@ private function dispatchSuccessEvent(CustomerInterface $customerCandidateDataOb
* @param int $customerId
*
* @return CustomerInterface
+ * @throws LocalizedException
+ * @throws NoSuchEntityException
*/
private function getCustomerDataObject($customerId)
{
@@ -342,7 +381,7 @@ private function populateNewCustomerDataObject(
*
* @param string $email
* @return boolean
- * @throws InvalidEmailOrPasswordException|InputException
+ * @throws InvalidEmailOrPasswordException|InputException|LocalizedException
*/
protected function changeCustomerPassword($email)
{
@@ -355,7 +394,7 @@ protected function changeCustomerPassword($email)
throw new InputException(__('Password confirmation doesn\'t match entered password.'));
}
- $isPasswordChanged = $this->customerAccountManagement->changePassword($email, $currPass, $newPass);
+ $isPasswordChanged = $this->accountManagement->changePassword($email, $currPass, $newPass);
}
return $isPasswordChanged;
@@ -393,8 +432,6 @@ private function processChangeEmailRequest(CustomerInterface $currentCustomerDat
* Get Customer Mapper instance
*
* @return Mapper
- *
- * @deprecated 100.1.3
*/
private function getCustomerMapper()
{
@@ -424,6 +461,7 @@ private function disableAddressValidation($customer)
* @param CustomerInterface $customerCandidateDataObject
* @param string $attributeToDelete
* @return void
+ * @throws FileSystemException
*/
private function deleteCustomerFileAttribute(
CustomerInterface $customerCandidateDataObject,
diff --git a/app/code/Magento/Customer/Model/AccountConfirmation.php b/app/code/Magento/Customer/Model/AccountConfirmation.php
index f5193bc50026f..d95308e4fbe2a 100644
--- a/app/code/Magento/Customer/Model/AccountConfirmation.php
+++ b/app/code/Magento/Customer/Model/AccountConfirmation.php
@@ -3,8 +3,11 @@
* Copyright © Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/
+declare(strict_types=1);
+
namespace Magento\Customer\Model;
+use Magento\Customer\Api\Data\CustomerInterface;
use Magento\Store\Model\ScopeInterface;
use Magento\Framework\App\Config\ScopeConfigInterface;
use Magento\Framework\Registry;
@@ -15,10 +18,30 @@
class AccountConfirmation
{
/**
- * Configuration path for email confirmation.
+ * Configuration path for email confirmation when creating a new customer
*/
public const XML_PATH_IS_CONFIRM = 'customer/create_account/confirm';
+ /**
+ * Configuration path for email confirmation when updating an existing customer's email
+ */
+ public const XML_PATH_IS_CONFIRM_EMAIL_CHANGED = 'customer/account_information/confirm';
+
+ /**
+ * Constant for confirmed status
+ */
+ private const ACCOUNT_CONFIRMED = 'account_confirmed';
+
+ /**
+ * Constant for confirmation required status
+ */
+ private const ACCOUNT_CONFIRMATION_REQUIRED = 'account_confirmation_required';
+
+ /**
+ * Constant for confirmation not required status
+ */
+ private const ACCOUNT_CONFIRMATION_NOT_REQUIRED = 'account_confirmation_not_required';
+
/**
* @var ScopeConfigInterface
*/
@@ -64,6 +87,54 @@ public function isConfirmationRequired($websiteId, $customerId, $customerEmail):
);
}
+ /**
+ * Check if accounts confirmation is required if email has been changed
+ *
+ * @param int|null $websiteId
+ * @param int|null $customerId
+ * @param string|null $customerEmail
+ * @return bool
+ */
+ public function isEmailChangedConfirmationRequired($websiteId, $customerId, $customerEmail): bool
+ {
+ return !$this->canSkipConfirmation($customerId, $customerEmail)
+ && $this->scopeConfig->isSetFlag(
+ self::XML_PATH_IS_CONFIRM_EMAIL_CHANGED,
+ ScopeInterface::SCOPE_WEBSITES,
+ $websiteId
+ );
+ }
+
+ /**
+ * Returns an email confirmation status if email has been changed
+ *
+ * @param CustomerInterface $customer
+ * @return string
+ */
+ private function getEmailChangedConfirmStatus(CustomerInterface $customer): string
+ {
+ $isEmailChangedConfirmationRequired = $this->isEmailChangedConfirmationRequired(
+ (int)$customer->getWebsiteId(),
+ (int)$customer->getId(),
+ $customer->getEmail()
+ );
+
+ return $isEmailChangedConfirmationRequired
+ ? $customer->getConfirmation() ? self::ACCOUNT_CONFIRMATION_REQUIRED : self::ACCOUNT_CONFIRMED
+ : self::ACCOUNT_CONFIRMATION_NOT_REQUIRED;
+ }
+
+ /**
+ * Checks if email confirmation is required for the customer
+ *
+ * @param CustomerInterface $customer
+ * @return bool
+ */
+ public function isCustomerEmailChangedConfirmRequired(CustomerInterface $customer):bool
+ {
+ return $this->getEmailChangedConfirmStatus($customer) === self::ACCOUNT_CONFIRMATION_REQUIRED;
+ }
+
/**
* Check whether confirmation may be skipped when registering using certain email address.
*
diff --git a/app/code/Magento/Customer/Model/AccountManagement.php b/app/code/Magento/Customer/Model/AccountManagement.php
index 139774a774f88..1630ac8717028 100644
--- a/app/code/Magento/Customer/Model/AccountManagement.php
+++ b/app/code/Magento/Customer/Model/AccountManagement.php
@@ -3,6 +3,7 @@
* Copyright © Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/
+declare(strict_types=1);
namespace Magento\Customer\Model;
@@ -56,6 +57,7 @@
use Magento\Store\Model\ScopeInterface;
use Magento\Store\Model\StoreManagerInterface;
use Psr\Log\LoggerInterface as PsrLogger;
+use Magento\Customer\Model\Logger as CustomerLogger;
/**
* Handle various customer account actions
@@ -219,7 +221,7 @@ class AccountManagement implements AccountManagementInterface
private $customerFactory;
/**
- * @var \Magento\Customer\Api\Data\ValidationResultsInterfaceFactory
+ * @var ValidationResultsInterfaceFactory
*/
private $validationResultsDataFactory;
@@ -229,7 +231,7 @@ class AccountManagement implements AccountManagementInterface
private $eventManager;
/**
- * @var \Magento\Store\Model\StoreManagerInterface
+ * @var StoreManagerInterface
*/
private $storeManager;
@@ -299,7 +301,7 @@ class AccountManagement implements AccountManagementInterface
protected $dataProcessor;
/**
- * @var \Magento\Framework\Registry
+ * @var Registry
*/
protected $registry;
@@ -319,7 +321,7 @@ class AccountManagement implements AccountManagementInterface
protected $objectFactory;
/**
- * @var \Magento\Framework\Api\ExtensibleDataObjectConverter
+ * @var ExtensibleDataObjectConverter
*/
protected $extensibleDataObjectConverter;
@@ -339,7 +341,7 @@ class AccountManagement implements AccountManagementInterface
private $emailNotification;
/**
- * @var \Magento\Eav\Model\Validator\Attribute\Backend
+ * @var Backend
*/
private $eavValidator;
@@ -388,6 +390,11 @@ class AccountManagement implements AccountManagementInterface
*/
private $authorization;
+ /**
+ * @var CustomerLogger
+ */
+ private CustomerLogger $customerLogger;
+
/**
* @param CustomerFactory $customerFactory
* @param ManagerInterface $eventManager
@@ -426,6 +433,7 @@ class AccountManagement implements AccountManagementInterface
* @param AuthorizationInterface|null $authorization
* @param AuthenticationInterface|null $authentication
* @param Backend|null $eavValidator
+ * @param CustomerLogger|null $customerLogger
* @SuppressWarnings(PHPMD.CyclomaticComplexity)
* @SuppressWarnings(PHPMD.ExcessiveParameterList)
* @SuppressWarnings(PHPMD.NPathComplexity)
@@ -469,7 +477,8 @@ public function __construct(
SessionCleanerInterface $sessionCleaner = null,
AuthorizationInterface $authorization = null,
AuthenticationInterface $authentication = null,
- Backend $eavValidator = null
+ Backend $eavValidator = null,
+ ?CustomerLogger $customerLogger = null
) {
$this->customerFactory = $customerFactory;
$this->eventManager = $eventManager;
@@ -512,6 +521,7 @@ public function __construct(
$this->authorization = $authorization ?? $objectManager->get(AuthorizationInterface::class);
$this->authentication = $authentication ?? $objectManager->get(AuthenticationInterface::class);
$this->eavValidator = $eavValidator ?? $objectManager->get(Backend::class);
+ $this->customerLogger = $customerLogger ?? $objectManager->get(CustomerLogger::class);
}
/**
@@ -562,9 +572,9 @@ public function activateById($customerId, $confirmationKey)
/**
* Activate a customer account using a key that was sent in a confirmation email.
*
- * @param \Magento\Customer\Api\Data\CustomerInterface $customer
+ * @param CustomerInterface $customer
* @param string $confirmationKey
- * @return \Magento\Customer\Api\Data\CustomerInterface
+ * @return CustomerInterface
* @throws InputException
* @throws InputMismatchException
* @throws InvalidTransitionException
@@ -586,12 +596,17 @@ private function activateCustomer($customer, $confirmationKey)
// No need to validate customer and customer address while activating customer
$this->setIgnoreValidationFlag($customer);
$this->customerRepository->save($customer);
- $this->getEmailNotification()->newAccount(
- $customer,
- 'confirmed',
- '',
- $this->storeManager->getStore()->getId()
- );
+
+ $customerLastLoginAt = $this->customerLogger->get((int)$customer->getId())->getLastLoginAt();
+ if (!$customerLastLoginAt) {
+ $this->getEmailNotification()->newAccount(
+ $customer,
+ 'confirmed',
+ '',
+ $this->storeManager->getStore()->getId()
+ );
+ }
+
return $customer;
}
@@ -615,7 +630,9 @@ public function authenticate($username, $password)
} catch (InvalidEmailOrPasswordException $e) {
throw new InvalidEmailOrPasswordException(__('Invalid login or password.'));
}
- if ($customer->getConfirmation() && $this->isConfirmationRequired($customer)) {
+
+ if ($customer->getConfirmation()
+ && ($this->isConfirmationRequired($customer) || $this->isEmailChangedConfirmationRequired($customer))) {
throw new EmailNotConfirmedException(__("This account isn't confirmed. Verify and try again."));
}
@@ -630,6 +647,21 @@ public function authenticate($username, $password)
return $customer;
}
+ /**
+ * Checks if account confirmation is required if the email address has been changed
+ *
+ * @param CustomerInterface $customer
+ * @return bool
+ */
+ private function isEmailChangedConfirmationRequired(CustomerInterface $customer): bool
+ {
+ return $this->accountConfirmation->isEmailChangedConfirmationRequired(
+ (int)$customer->getWebsiteId(),
+ (int)$customer->getId(),
+ $customer->getEmail()
+ );
+ }
+
/**
* @inheritdoc
*/
@@ -715,7 +747,7 @@ public function resetPassword($email, $resetToken, $newPassword)
$this->setIgnoreValidationFlag($customer);
//Validate Token and new password strength
- $this->validateResetPasswordToken($customer->getId(), $resetToken);
+ $this->validateResetPasswordToken((int)$customer->getId(), $resetToken);
$this->credentialsValidator->checkPasswordDifferentFromEmail(
$email,
$newPassword
@@ -829,13 +861,10 @@ public function getConfirmationStatus($customerId)
{
// load customer by id
$customer = $this->customerRepository->getById($customerId);
- if ($this->isConfirmationRequired($customer)) {
- if (!$customer->getConfirmation()) {
- return self::ACCOUNT_CONFIRMED;
- }
- return self::ACCOUNT_CONFIRMATION_REQUIRED;
- }
- return self::ACCOUNT_CONFIRMATION_NOT_REQUIRED;
+
+ return $this->isConfirmationRequired($customer)
+ ? $customer->getConfirmation() ? self::ACCOUNT_CONFIRMATION_REQUIRED : self::ACCOUNT_CONFIRMED
+ : self::ACCOUNT_CONFIRMATION_NOT_REQUIRED;
}
/**
@@ -1216,6 +1245,7 @@ public function isReadonly($customerId)
* @return $this
* @throws LocalizedException
* @deprecated 100.1.0
+ * @see EmailNotification::newAccount()
*/
protected function sendNewAccountEmail(
$customer,
@@ -1259,6 +1289,7 @@ protected function sendNewAccountEmail(
* @throws LocalizedException
* @throws NoSuchEntityException
* @deprecated 100.1.0
+ * @see EmailNotification::credentialsChanged()
*/
protected function sendPasswordResetNotificationEmail($customer)
{
@@ -1272,6 +1303,7 @@ protected function sendPasswordResetNotificationEmail($customer)
* @param int|string|null $defaultStoreId
* @return int
* @deprecated 100.1.0
+ * @see StoreManagerInterface::getWebsite()
* @throws LocalizedException
*/
protected function getWebsiteStoreId($customer, $defaultStoreId = null)
@@ -1289,6 +1321,7 @@ protected function getWebsiteStoreId($customer, $defaultStoreId = null)
*
* @return array
* @deprecated 100.1.0
+ * @see EmailNotification::TEMPLATE_TYPES
*/
protected function getTemplateTypes()
{
@@ -1322,6 +1355,7 @@ protected function getTemplateTypes()
* @return $this
* @throws MailException
* @deprecated 100.1.0
+ * @see EmailNotification::sendEmailTemplate()
*/
protected function sendEmailTemplate(
$customer,
@@ -1476,6 +1510,7 @@ public function changeResetPasswordLinkToken(CustomerInterface $customer, string
* @throws LocalizedException
* @throws NoSuchEntityException
* @deprecated 100.1.0
+ * @see EmailNotification::passwordReminder()
*/
public function sendPasswordReminderEmail($customer)
{
@@ -1505,6 +1540,7 @@ public function sendPasswordReminderEmail($customer)
* @throws LocalizedException
* @throws NoSuchEntityException
* @deprecated 100.1.0
+ * @see EmailNotification::passwordResetConfirmation()
*/
public function sendPasswordResetConfirmationEmail($customer)
{
@@ -1550,6 +1586,7 @@ protected function getAddressById(CustomerInterface $customer, $addressId)
* @return Data\CustomerSecure
* @throws NoSuchEntityException
* @deprecated 100.1.0
+ * @see EmailNotification::getFullCustomerObject()
*/
protected function getFullCustomerObject($customer)
{
@@ -1558,7 +1595,7 @@ protected function getFullCustomerObject($customer)
$mergedCustomerData = $this->customerRegistry->retrieveSecureData($customer->getId());
$customerData = $this->dataProcessor->buildOutputDataArray(
$customer,
- \Magento\Customer\Api\Data\CustomerInterface::class
+ CustomerInterface::class
);
$mergedCustomerData->addData($customerData);
$mergedCustomerData->setData('name', $this->customerViewHelper->getCustomerName($customer));
@@ -1594,7 +1631,6 @@ private function disableAddressValidation($customer)
* Get email notification
*
* @return EmailNotificationInterface
- * @deprecated 100.1.0
*/
private function getEmailNotification()
{
diff --git a/app/code/Magento/Customer/Model/EmailNotification.php b/app/code/Magento/Customer/Model/EmailNotification.php
index a4f85a9c4a0c9..a71cf79a4f51b 100644
--- a/app/code/Magento/Customer/Model/EmailNotification.php
+++ b/app/code/Magento/Customer/Model/EmailNotification.php
@@ -9,6 +9,8 @@
use Magento\Framework\App\Config\ScopeConfigInterface;
use Magento\Framework\App\ObjectManager;
+use Magento\Framework\Exception\MailException;
+use Magento\Framework\Exception\NoSuchEntityException;
use Magento\Framework\Mail\Template\SenderResolverInterface;
use Magento\Store\Model\App\Emulation;
use Magento\Store\Model\StoreManagerInterface;
@@ -30,28 +32,28 @@ class EmailNotification implements EmailNotificationInterface
/**#@+
* Configuration paths for email templates and identities
*/
- const XML_PATH_FORGOT_EMAIL_IDENTITY = 'customer/password/forgot_email_identity';
+ public const XML_PATH_FORGOT_EMAIL_IDENTITY = 'customer/password/forgot_email_identity';
- const XML_PATH_RESET_PASSWORD_TEMPLATE = 'customer/password/reset_password_template';
+ public const XML_PATH_RESET_PASSWORD_TEMPLATE = 'customer/password/reset_password_template';
- const XML_PATH_CHANGE_EMAIL_TEMPLATE = 'customer/account_information/change_email_template';
+ public const XML_PATH_CHANGE_EMAIL_TEMPLATE = 'customer/account_information/change_email_template';
- const XML_PATH_CHANGE_EMAIL_AND_PASSWORD_TEMPLATE =
+ public const XML_PATH_CHANGE_EMAIL_AND_PASSWORD_TEMPLATE =
'customer/account_information/change_email_and_password_template';
- const XML_PATH_FORGOT_EMAIL_TEMPLATE = 'customer/password/forgot_email_template';
+ public const XML_PATH_FORGOT_EMAIL_TEMPLATE = 'customer/password/forgot_email_template';
- const XML_PATH_REMIND_EMAIL_TEMPLATE = 'customer/password/remind_email_template';
+ public const XML_PATH_REMIND_EMAIL_TEMPLATE = 'customer/password/remind_email_template';
- const XML_PATH_REGISTER_EMAIL_IDENTITY = 'customer/create_account/email_identity';
+ public const XML_PATH_REGISTER_EMAIL_IDENTITY = 'customer/create_account/email_identity';
- const XML_PATH_REGISTER_EMAIL_TEMPLATE = 'customer/create_account/email_template';
+ public const XML_PATH_REGISTER_EMAIL_TEMPLATE = 'customer/create_account/email_template';
- const XML_PATH_REGISTER_NO_PASSWORD_EMAIL_TEMPLATE = 'customer/create_account/email_no_password_template';
+ public const XML_PATH_REGISTER_NO_PASSWORD_EMAIL_TEMPLATE = 'customer/create_account/email_no_password_template';
- const XML_PATH_CONFIRM_EMAIL_TEMPLATE = 'customer/create_account/email_confirmation_template';
+ public const XML_PATH_CONFIRM_EMAIL_TEMPLATE = 'customer/create_account/email_confirmation_template';
- const XML_PATH_CONFIRMED_EMAIL_TEMPLATE = 'customer/create_account/email_confirmed_template';
+ public const XML_PATH_CONFIRMED_EMAIL_TEMPLATE = 'customer/create_account/email_confirmed_template';
/**
* self::NEW_ACCOUNT_EMAIL_REGISTERED welcome email, when confirmation is disabled
@@ -62,7 +64,7 @@ class EmailNotification implements EmailNotificationInterface
* and password is set
* self::NEW_ACCOUNT_EMAIL_CONFIRMATION email with confirmation link
*/
- const TEMPLATE_TYPES = [
+ public const TEMPLATE_TYPES = [
self::NEW_ACCOUNT_EMAIL_REGISTERED => self::XML_PATH_REGISTER_EMAIL_TEMPLATE,
self::NEW_ACCOUNT_EMAIL_REGISTERED_NO_PASSWORD => self::XML_PATH_REGISTER_NO_PASSWORD_EMAIL_TEMPLATE,
self::NEW_ACCOUNT_EMAIL_CONFIRMED => self::XML_PATH_CONFIRMED_EMAIL_TEMPLATE,
@@ -71,7 +73,9 @@ class EmailNotification implements EmailNotificationInterface
/**#@-*/
- /**#@-*/
+ /**
+ * @var CustomerRegistry
+ */
private $customerRegistry;
/**
@@ -109,6 +113,11 @@ class EmailNotification implements EmailNotificationInterface
*/
private $emulation;
+ /**
+ * @var AccountConfirmation
+ */
+ private AccountConfirmation $accountConfirmation;
+
/**
* @param CustomerRegistry $customerRegistry
* @param StoreManagerInterface $storeManager
@@ -118,6 +127,7 @@ class EmailNotification implements EmailNotificationInterface
* @param ScopeConfigInterface $scopeConfig
* @param SenderResolverInterface|null $senderResolver
* @param Emulation|null $emulation
+ * @param AccountConfirmation|null $accountConfirmation
*/
public function __construct(
CustomerRegistry $customerRegistry,
@@ -127,7 +137,8 @@ public function __construct(
DataObjectProcessor $dataProcessor,
ScopeConfigInterface $scopeConfig,
SenderResolverInterface $senderResolver = null,
- Emulation $emulation =null
+ Emulation $emulation = null,
+ ?AccountConfirmation $accountConfirmation = null
) {
$this->customerRegistry = $customerRegistry;
$this->storeManager = $storeManager;
@@ -137,6 +148,8 @@ public function __construct(
$this->scopeConfig = $scopeConfig;
$this->senderResolver = $senderResolver ?? ObjectManager::getInstance()->get(SenderResolverInterface::class);
$this->emulation = $emulation ?? ObjectManager::getInstance()->get(Emulation::class);
+ $this->accountConfirmation = $accountConfirmation ?? ObjectManager::getInstance()
+ ->get(AccountConfirmation::class);
}
/**
@@ -146,6 +159,7 @@ public function __construct(
* @param string $origCustomerEmail
* @param bool $isPasswordChanged
* @return void
+ * @throws LocalizedException
*/
public function credentialsChanged(
CustomerInterface $savedCustomer,
@@ -153,6 +167,7 @@ public function credentialsChanged(
$isPasswordChanged = false
): void {
if ($origCustomerEmail != $savedCustomer->getEmail()) {
+ $this->emailChangedConfirmation($savedCustomer);
if ($isPasswordChanged) {
$this->emailAndPasswordChanged($savedCustomer, $origCustomerEmail);
$this->emailAndPasswordChanged($savedCustomer, $savedCustomer->getEmail());
@@ -175,6 +190,8 @@ public function credentialsChanged(
* @param CustomerInterface $customer
* @param string $email
* @return void
+ * @throws MailException
+ * @throws NoSuchEntityException|LocalizedException
*/
private function emailAndPasswordChanged(CustomerInterface $customer, $email): void
{
@@ -201,6 +218,8 @@ private function emailAndPasswordChanged(CustomerInterface $customer, $email): v
* @param CustomerInterface $customer
* @param string $email
* @return void
+ * @throws MailException
+ * @throws NoSuchEntityException|LocalizedException
*/
private function emailChanged(CustomerInterface $customer, $email): void
{
@@ -226,6 +245,8 @@ private function emailChanged(CustomerInterface $customer, $email): void
*
* @param CustomerInterface $customer
* @return void
+ * @throws MailException
+ * @throws NoSuchEntityException|LocalizedException
*/
private function passwordReset(CustomerInterface $customer): void
{
@@ -255,7 +276,7 @@ private function passwordReset(CustomerInterface $customer): void
* @param int|null $storeId
* @param string $email
* @return void
- * @throws \Magento\Framework\Exception\MailException
+ * @throws MailException|LocalizedException
*/
private function sendEmailTemplate(
$customer,
@@ -293,6 +314,7 @@ private function sendEmailTemplate(
*
* @param CustomerInterface $customer
* @return CustomerSecure
+ * @throws NoSuchEntityException
*/
private function getFullCustomerObject($customer): CustomerSecure
{
@@ -312,6 +334,7 @@ private function getFullCustomerObject($customer): CustomerSecure
* @param CustomerInterface $customer
* @param int|string|null $defaultStoreId
* @return int
+ * @throws LocalizedException
*/
private function getWebsiteStoreId($customer, $defaultStoreId = null): int
{
@@ -327,6 +350,9 @@ private function getWebsiteStoreId($customer, $defaultStoreId = null): int
*
* @param CustomerInterface $customer
* @return void
+ * @throws LocalizedException
+ * @throws MailException
+ * @throws NoSuchEntityException
*/
public function passwordReminder(CustomerInterface $customer): void
{
@@ -351,6 +377,9 @@ public function passwordReminder(CustomerInterface $customer): void
*
* @param CustomerInterface $customer
* @return void
+ * @throws LocalizedException
+ * @throws MailException
+ * @throws NoSuchEntityException
*/
public function passwordResetConfirmation(CustomerInterface $customer): void
{
@@ -412,4 +441,18 @@ public function newAccount(
$storeId
);
}
+
+ /**
+ * Sending an email to confirm the email address in case the email address has been changed
+ *
+ * @param CustomerInterface $customer
+ * @throws LocalizedException
+ */
+ private function emailChangedConfirmation(CustomerInterface $customer): void
+ {
+ if (!$this->accountConfirmation->isCustomerEmailChangedConfirmRequired($customer)) {
+ return;
+ }
+ $this->newAccount($customer, self::NEW_ACCOUNT_EMAIL_CONFIRMATION, null, $customer->getStoreId());
+ }
}
diff --git a/app/code/Magento/Customer/Model/Plugin/ClearSessionsAfterLogoutPlugin.php b/app/code/Magento/Customer/Model/Plugin/ClearSessionsAfterLogoutPlugin.php
new file mode 100644
index 0000000000000..ec837d9737595
--- /dev/null
+++ b/app/code/Magento/Customer/Model/Plugin/ClearSessionsAfterLogoutPlugin.php
@@ -0,0 +1,108 @@
+session = $customerSession;
+ $this->saveHandler = $saveHandler;
+ $this->storage = $storage;
+ $this->state = $state;
+ $this->logger = $logger;
+ }
+
+ /**
+ * Plugin to clear session after logout
+ *
+ * @param Session $subject
+ * @param Session $result
+ * @return Session
+ * @throws LocalizedException
+ * @SuppressWarnings(PHPMD.UnusedFormalParameter)
+ */
+ public function afterLogout(Session $subject, Session $result): Session
+ {
+ $isAreaFrontEnd = $this->state->getAreaCode() === Area::AREA_FRONTEND;
+ $previousSessions = $this->storage->getData(self::PREVIOUS_ACTIVE_SESSIONS);
+
+ if ($isAreaFrontEnd && !empty($previousSessions)) {
+ foreach ($previousSessions as $sessionId) {
+ try {
+ $this->session->start();
+ $this->saveHandler->destroy($sessionId);
+ $this->session->writeClose();
+ } catch (SessionException $e) {
+ $this->logger->error($e);
+ }
+
+ }
+ $this->storage->setData(self::PREVIOUS_ACTIVE_SESSIONS, []);
+ }
+ return $result;
+ }
+}
diff --git a/app/code/Magento/Customer/Model/Plugin/CustomerNotification.php b/app/code/Magento/Customer/Model/Plugin/CustomerNotification.php
index db694ad3295ce..ab3cf8cb7d852 100644
--- a/app/code/Magento/Customer/Model/Plugin/CustomerNotification.php
+++ b/app/code/Magento/Customer/Model/Plugin/CustomerNotification.php
@@ -3,6 +3,7 @@
* Copyright © Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/
+declare(strict_types=1);
namespace Magento\Customer\Model\Plugin;
@@ -16,13 +17,21 @@
use Magento\Framework\App\RequestInterface;
use Magento\Framework\App\State;
use Magento\Framework\Exception\NoSuchEntityException;
+use Magento\Framework\Session\StorageInterface;
use Psr\Log\LoggerInterface;
/**
* Refresh the Customer session if `UpdateSession` notification registered
+ *
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
*/
class CustomerNotification
{
+ /**
+ * Array key for all active previous session ids.
+ */
+ private const PREVIOUS_ACTIVE_SESSIONS = 'previous_active_sessions';
+
/**
* @var Session
*/
@@ -53,6 +62,11 @@ class CustomerNotification
*/
private $request;
+ /**
+ * @var StorageInterface
+ */
+ private StorageInterface $storage;
+
/**
* Initialize dependencies.
*
@@ -61,7 +75,8 @@ class CustomerNotification
* @param State $state
* @param CustomerRepositoryInterface $customerRepository
* @param LoggerInterface $logger
- * @param RequestInterface|null $request
+ * @param RequestInterface $request
+ * @param StorageInterface|null $storage
*/
public function __construct(
Session $session,
@@ -69,7 +84,8 @@ public function __construct(
State $state,
CustomerRepositoryInterface $customerRepository,
LoggerInterface $logger,
- RequestInterface $request
+ RequestInterface $request,
+ StorageInterface $storage = null
) {
$this->session = $session;
$this->notificationStorage = $notificationStorage;
@@ -77,6 +93,7 @@ public function __construct(
$this->customerRepository = $customerRepository;
$this->logger = $logger;
$this->request = $request;
+ $this->storage = $storage ?? ObjectManager::getInstance()->get(StorageInterface::class);
}
/**
@@ -89,18 +106,33 @@ public function __construct(
*/
public function beforeExecute(ActionInterface $subject)
{
- $customerId = $this->session->getCustomerId();
-
- if ($this->isFrontendRequest() && $this->isPostRequest() && $this->isSessionUpdateRegisteredFor($customerId)) {
- try {
- $this->session->regenerateId();
- $customer = $this->customerRepository->getById($customerId);
- $this->session->setCustomerData($customer);
- $this->session->setCustomerGroupId($customer->getGroupId());
- $this->notificationStorage->remove(NotificationStorage::UPDATE_CUSTOMER_SESSION, $customer->getId());
- } catch (NoSuchEntityException $e) {
- $this->logger->error($e);
+ $customerId = (int)$this->session->getCustomerId();
+
+ if (!$this->isFrontendRequest()
+ || !$this->isPostRequest()
+ || !$this->isSessionUpdateRegisteredFor($customerId)) {
+ return;
+ }
+
+ try {
+ $oldSessionId = $this->session->getSessionId();
+ $previousSessions = $this->storage->getData(self::PREVIOUS_ACTIVE_SESSIONS);
+
+ if (empty($previousSessions)) {
+ $previousSessions = [];
}
+ $previousSessions[] = $oldSessionId;
+ $this->storage->setData(self::PREVIOUS_ACTIVE_SESSIONS, $previousSessions);
+ $this->session->regenerateId();
+ $customer = $this->customerRepository->getById($customerId);
+ $this->session->setCustomerData($customer);
+ $this->session->setCustomerGroupId($customer->getGroupId());
+ $this->notificationStorage->remove(
+ NotificationStorage::UPDATE_CUSTOMER_SESSION,
+ $customer->getId()
+ );
+ } catch (NoSuchEntityException $e) {
+ $this->logger->error($e);
}
}
@@ -131,8 +163,8 @@ private function isFrontendRequest(): bool
* @param int $customerId
* @return bool
*/
- private function isSessionUpdateRegisteredFor($customerId): bool
+ private function isSessionUpdateRegisteredFor(int $customerId): bool
{
- return $this->notificationStorage->isExists(NotificationStorage::UPDATE_CUSTOMER_SESSION, $customerId);
+ return (bool)$this->notificationStorage->isExists(NotificationStorage::UPDATE_CUSTOMER_SESSION, $customerId);
}
}
diff --git a/app/code/Magento/Customer/Model/ResourceModel/Customer.php b/app/code/Magento/Customer/Model/ResourceModel/Customer.php
index c065f85aa6483..9ae14f68923fa 100644
--- a/app/code/Magento/Customer/Model/ResourceModel/Customer.php
+++ b/app/code/Magento/Customer/Model/ResourceModel/Customer.php
@@ -7,12 +7,25 @@
namespace Magento\Customer\Model\ResourceModel;
+use Magento\Customer\Api\Data\CustomerInterface;
use Magento\Customer\Model\AccountConfirmation;
use Magento\Customer\Model\Customer\NotificationStorage;
+use Magento\Eav\Model\Entity\Context;
+use Magento\Eav\Model\Entity\VersionControl\AbstractEntity;
+use Magento\Framework\App\Config\ScopeConfigInterface;
use Magento\Framework\App\ObjectManager;
+use Magento\Framework\DataObject;
+use Magento\Framework\DB\Select;
use Magento\Framework\Exception\AlreadyExistsException;
+use Magento\Framework\Exception\LocalizedException;
+use Magento\Framework\Exception\NoSuchEntityException;
+use Magento\Framework\Model\ResourceModel\Db\VersionControl\RelationComposite;
+use Magento\Framework\Model\ResourceModel\Db\VersionControl\Snapshot;
+use Magento\Framework\Stdlib\DateTime;
use Magento\Framework\Validator\Exception as ValidatorException;
use Magento\Framework\Encryption\EncryptorInterface;
+use Magento\Framework\Validator\Factory;
+use Magento\Store\Model\StoreManagerInterface;
/**
* Customer entity resource model
@@ -21,27 +34,27 @@
* @SuppressWarnings(PHPMD.CouplingBetweenObjects)
* @since 100.0.2
*/
-class Customer extends \Magento\Eav\Model\Entity\VersionControl\AbstractEntity
+class Customer extends AbstractEntity
{
/**
- * @var \Magento\Framework\Validator\Factory
+ * @var Factory
*/
protected $_validatorFactory;
/**
* Core store config
*
- * @var \Magento\Framework\App\Config\ScopeConfigInterface
+ * @var ScopeConfigInterface
*/
protected $_scopeConfig;
/**
- * @var \Magento\Framework\Stdlib\DateTime
+ * @var DateTime
*/
protected $dateTime;
/**
- * @var \Magento\Store\Model\StoreManagerInterface
+ * @var StoreManagerInterface
*/
protected $storeManager;
@@ -63,26 +76,26 @@ class Customer extends \Magento\Eav\Model\Entity\VersionControl\AbstractEntity
/**
* Customer constructor.
*
- * @param \Magento\Eav\Model\Entity\Context $context
- * @param \Magento\Framework\Model\ResourceModel\Db\VersionControl\Snapshot $entitySnapshot
- * @param \Magento\Framework\Model\ResourceModel\Db\VersionControl\RelationComposite $entityRelationComposite
- * @param \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig
- * @param \Magento\Framework\Validator\Factory $validatorFactory
- * @param \Magento\Framework\Stdlib\DateTime $dateTime
- * @param \Magento\Store\Model\StoreManagerInterface $storeManager
+ * @param Context $context
+ * @param Snapshot $entitySnapshot
+ * @param RelationComposite $entityRelationComposite
+ * @param ScopeConfigInterface $scopeConfig
+ * @param Factory $validatorFactory
+ * @param DateTime $dateTime
+ * @param StoreManagerInterface $storeManager
* @param array $data
- * @param AccountConfirmation $accountConfirmation
+ * @param AccountConfirmation|null $accountConfirmation
* @param EncryptorInterface|null $encryptor
* @SuppressWarnings(PHPMD.ExcessiveParameterList)
*/
public function __construct(
- \Magento\Eav\Model\Entity\Context $context,
- \Magento\Framework\Model\ResourceModel\Db\VersionControl\Snapshot $entitySnapshot,
- \Magento\Framework\Model\ResourceModel\Db\VersionControl\RelationComposite $entityRelationComposite,
- \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig,
- \Magento\Framework\Validator\Factory $validatorFactory,
- \Magento\Framework\Stdlib\DateTime $dateTime,
- \Magento\Store\Model\StoreManagerInterface $storeManager,
+ Context $context,
+ Snapshot $entitySnapshot,
+ RelationComposite $entityRelationComposite,
+ ScopeConfigInterface $scopeConfig,
+ Factory $validatorFactory,
+ DateTime $dateTime,
+ StoreManagerInterface $storeManager,
$data = [],
AccountConfirmation $accountConfirmation = null,
EncryptorInterface $encryptor = null
@@ -120,16 +133,16 @@ protected function _getDefaultAttributes()
/**
* Check customer scope, email and confirmation key before saving
*
- * @param \Magento\Framework\DataObject|\Magento\Customer\Api\Data\CustomerInterface $customer
+ * @param DataObject|CustomerInterface $customer
*
* @return $this
* @throws AlreadyExistsException
* @throws ValidatorException
- * @throws \Magento\Framework\Exception\NoSuchEntityException
+ * @throws NoSuchEntityException
* @SuppressWarnings(PHPMD.CyclomaticComplexity)
* @SuppressWarnings(PHPMD.NPathComplexity)
*/
- protected function _beforeSave(\Magento\Framework\DataObject $customer)
+ protected function _beforeSave(DataObject $customer)
{
/** @var \Magento\Customer\Model\Customer $customer */
if ($customer->getStoreId() === null) {
@@ -169,13 +182,7 @@ protected function _beforeSave(\Magento\Framework\DataObject $customer)
}
// set confirmation key logic
- if (!$customer->getId() &&
- $this->accountConfirmation->isConfirmationRequired(
- $customer->getWebsiteId(),
- $customer->getId(),
- $customer->getEmail()
- )
- ) {
+ if ($this->isConfirmationRequired($customer)) {
$customer->setConfirmation($customer->getRandomConfirmationKey());
}
// remove customer confirmation key from database, if empty
@@ -195,6 +202,51 @@ protected function _beforeSave(\Magento\Framework\DataObject $customer)
return $this;
}
+ /**
+ * Checks if customer email verification is required
+ *
+ * @param DataObject|CustomerInterface $customer
+ * @return bool
+ */
+ private function isConfirmationRequired(DataObject $customer): bool
+ {
+ return $this->isNewCustomerConfirmationRequired($customer)
+ || $this->isExistingCustomerConfirmationRequired($customer);
+ }
+
+ /**
+ * Checks if customer email verification is required for a new customer
+ *
+ * @param DataObject|CustomerInterface $customer
+ * @return bool
+ */
+ private function isNewCustomerConfirmationRequired(DataObject $customer): bool
+ {
+ return !$customer->getId()
+ && $this->accountConfirmation->isConfirmationRequired(
+ $customer->getWebsiteId(),
+ $customer->getId(),
+ $customer->getEmail()
+ );
+ }
+
+ /**
+ * Checks if customer email verification is required for an existing customer
+ *
+ * @param DataObject|CustomerInterface $customer
+ * @return bool
+ */
+ private function isExistingCustomerConfirmationRequired(DataObject $customer): bool
+ {
+ return $customer->getId()
+ && $customer->dataHasChangedFor('email')
+ && $this->accountConfirmation->isEmailChangedConfirmationRequired(
+ (int)$customer->getWebsiteId(),
+ (int)$customer->getId(),
+ $customer->getEmail()
+ );
+ }
+
/**
* Validate customer entity
*
@@ -231,10 +283,10 @@ private function getNotificationStorage()
/**
* Save customer addresses and set default addresses in attributes backend
*
- * @param \Magento\Framework\DataObject $customer
+ * @param DataObject $customer
* @return $this
*/
- protected function _afterSave(\Magento\Framework\DataObject $customer)
+ protected function _afterSave(DataObject $customer)
{
$this->getNotificationStorage()->add(
NotificationStorage::UPDATE_CUSTOMER_SESSION,
@@ -250,9 +302,9 @@ protected function _afterSave(\Magento\Framework\DataObject $customer)
/**
* Retrieve select object for loading base entity row
*
- * @param \Magento\Framework\DataObject $object
+ * @param DataObject $object
* @param string|int $rowId
- * @return \Magento\Framework\DB\Select
+ * @return Select
*/
protected function _getLoadRowSelect($object, $rowId)
{
@@ -270,7 +322,7 @@ protected function _getLoadRowSelect($object, $rowId)
* @param \Magento\Customer\Model\Customer $customer
* @param string $email
* @return $this
- * @throws \Magento\Framework\Exception\LocalizedException
+ * @throws LocalizedException
*/
public function loadByEmail(\Magento\Customer\Model\Customer $customer, $email)
{
@@ -285,7 +337,7 @@ public function loadByEmail(\Magento\Customer\Model\Customer $customer, $email)
if ($customer->getSharingConfig()->isWebsiteScope()) {
if (!$customer->hasData('website_id')) {
- throw new \Magento\Framework\Exception\LocalizedException(
+ throw new LocalizedException(
__("A customer website ID wasn't specified. The ID must be specified to use the website scope.")
);
}
@@ -390,10 +442,10 @@ public function getWebsiteId($customerId)
/**
* Custom setter of increment ID if its needed
*
- * @param \Magento\Framework\DataObject $object
+ * @param DataObject $object
* @return $this
*/
- public function setNewIncrementId(\Magento\Framework\DataObject $object)
+ public function setNewIncrementId(DataObject $object)
{
if ($this->_scopeConfig->getValue(
\Magento\Customer\Model\Customer::XML_PATH_GENERATE_HUMAN_FRIENDLY_ID,
@@ -419,7 +471,7 @@ public function changeResetPasswordLinkToken(\Magento\Customer\Model\Customer $c
if (is_string($passwordLinkToken) && !empty($passwordLinkToken)) {
$customer->setRpToken($passwordLinkToken);
$customer->setRpTokenCreatedAt(
- (new \DateTime())->format(\Magento\Framework\Stdlib\DateTime::DATETIME_PHP_FORMAT)
+ (new \DateTime())->format(DateTime::DATETIME_PHP_FORMAT)
);
}
return $this;
@@ -469,7 +521,7 @@ public function updateSessionCutOff(int $customerId, int $timestamp): void
/**
* @inheritDoc
*/
- protected function _afterLoad(\Magento\Framework\DataObject $customer)
+ protected function _afterLoad(DataObject $customer)
{
if ($customer->getData('rp_token')) {
$rpToken = $customer->getData('rp_token');
diff --git a/app/code/Magento/Customer/Plugin/Webapi/Controller/Rest/ValidateCustomerData.php b/app/code/Magento/Customer/Plugin/Webapi/Controller/Rest/ValidateCustomerData.php
new file mode 100644
index 0000000000000..ad2d8ed1cf974
--- /dev/null
+++ b/app/code/Magento/Customer/Plugin/Webapi/Controller/Rest/ValidateCustomerData.php
@@ -0,0 +1,56 @@
+validateInputData($inputData[self:: CUSTOMER_KEY]);
+ }
+ return [$inputData, $parameters];
+ }
+
+ /**
+ * Validates InputData
+ *
+ * @param array $inputData
+ * @return array
+ */
+ private function validateInputData(array $inputData): array
+ {
+ $result = [];
+
+ $data = array_filter($inputData, function ($k) use (&$result) {
+ $key = is_string($k) ? strtolower($k) : $k;
+ return !isset($result[$key]) && ($result[$key] = true);
+ }, ARRAY_FILTER_USE_KEY);
+
+ return array_map(function ($value) {
+ return is_array($value) ? $this->validateInputData($value) : $value;
+ }, $data);
+ }
+}
diff --git a/app/code/Magento/Customer/Test/Unit/Controller/Account/ConfirmTest.php b/app/code/Magento/Customer/Test/Unit/Controller/Account/ConfirmTest.php
index 19db3d8317da1..3062d9a5df2d1 100644
--- a/app/code/Magento/Customer/Test/Unit/Controller/Account/ConfirmTest.php
+++ b/app/code/Magento/Customer/Test/Unit/Controller/Account/ConfirmTest.php
@@ -12,6 +12,8 @@
use Magento\Customer\Api\Data\CustomerInterface;
use Magento\Customer\Controller\Account\Confirm;
use Magento\Customer\Helper\Address;
+use Magento\Customer\Model\Logger as CustomerLogger;
+use Magento\Customer\Model\Log;
use Magento\Customer\Model\Session;
use Magento\Customer\Model\Url;
use Magento\Framework\App\Action\Context;
@@ -123,6 +125,16 @@ class ConfirmTest extends TestCase
*/
protected $redirectResultMock;
+ /**
+ * @var CustomerLogger|MockObject
+ */
+ private $customerLoggerMock;
+
+ /**
+ * @var Log|MockObject
+ */
+ private $logMock;
+
/**
* @inheritdoc
*/
@@ -143,6 +155,9 @@ protected function setUp(): void
->method('create')
->willReturn($this->urlMock);
+ $this->customerLoggerMock = $this->createMock(CustomerLogger::class);
+ $this->logMock = $this->createMock(Log::class);
+
$this->customerAccountManagementMock =
$this->getMockForAbstractClass(AccountManagementInterface::class);
$this->customerDataMock = $this->getMockForAbstractClass(CustomerInterface::class);
@@ -195,7 +210,8 @@ protected function setUp(): void
'customerAccountManagement' => $this->customerAccountManagementMock,
'customerRepository' => $this->customerRepositoryMock,
'addressHelper' => $this->addressHelperMock,
- 'urlFactory' => $urlFactoryMock
+ 'urlFactory' => $urlFactoryMock,
+ 'customerLogger' => $this->customerLoggerMock
]
);
}
@@ -218,6 +234,8 @@ public function testIsLoggedIn(): void
}
/**
+ * @param $customerId
+ * @param $key
* @return void
* @dataProvider getParametersDataProvider
*/
@@ -271,7 +289,8 @@ public function getParametersDataProvider(): array
* @param $key
* @param $vatValidationEnabled
* @param $addressType
- * @param Phrase $successMessage
+ * @param $lastLoginAt
+ * @param $successMessage
*
* @return void
* @dataProvider getSuccessMessageDataProvider
@@ -282,7 +301,8 @@ public function testSuccessMessage(
$key,
$vatValidationEnabled,
$addressType,
- Phrase $successMessage
+ $lastLoginAt,
+ $successMessage
): void {
$this->customerSessionMock->expects($this->once())
->method('isLoggedIn')
@@ -292,7 +312,7 @@ public function testSuccessMessage(
->method('getParam')
->willReturnMap(
[
- ['id', false, $customerId],
+ ['id', 0, $customerId],
['key', false, $key]
]
);
@@ -333,6 +353,14 @@ public function testSuccessMessage(
['*/*/admin', ['_secure' => true], 'http://store.web/back']
]);
+ $this->logMock->expects($vatValidationEnabled ? $this->never() : $this->once())
+ ->method('getLastLoginAt')
+ ->willReturn($lastLoginAt);
+ $this->customerLoggerMock->expects($vatValidationEnabled ? $this->never() : $this->once())
+ ->method('get')
+ ->with(1)
+ ->willReturn($this->logMock);
+
$this->addressHelperMock->expects($this->once())
->method('isVatValidationEnabled')
->willReturn($vatValidationEnabled);
@@ -388,12 +416,14 @@ public function testSuccessMessage(
public function getSuccessMessageDataProvider(): array
{
return [
- [1, 1, false, null, __('Thank you for registering with %1.', 'frontend')],
+ [1, 1, false, null, 'some-datetime', null],
+ [1, 1, false, null, null, __('Thank you for registering with %1.', 'frontend')],
[
1,
1,
true,
Address::TYPE_BILLING,
+ null,
__(
'If you are a registered VAT customer, please click here'
. ' to enter your billing address for proper VAT calculation.',
@@ -405,12 +435,13 @@ public function getSuccessMessageDataProvider(): array
1,
true,
Address::TYPE_SHIPPING,
+ null,
__(
'If you are a registered VAT customer, please click here'
. ' to enter your shipping address for proper VAT calculation.',
'http://store.web/customer/address/edit'
)
- ]
+ ],
];
}
@@ -421,7 +452,8 @@ public function getSuccessMessageDataProvider(): array
* @param $successUrl
* @param $resultUrl
* @param $isSetFlag
- * @param Phrase $successMessage
+ * @param $successMessage
+ * @param $lastLoginAt
*
* @return void
* @dataProvider getSuccessRedirectDataProvider
@@ -433,7 +465,8 @@ public function testSuccessRedirect(
$successUrl,
$resultUrl,
$isSetFlag,
- Phrase $successMessage
+ $lastLoginAt,
+ $successMessage
): void {
$this->customerSessionMock->expects($this->once())
->method('isLoggedIn')
@@ -443,7 +476,7 @@ public function testSuccessRedirect(
->method('getParam')
->willReturnMap(
[
- ['id', false, $customerId],
+ ['id', 0, $customerId],
['key', false, $key],
['back_url', false, $backUrl]
]
@@ -469,23 +502,28 @@ public function testSuccessRedirect(
->with($this->customerDataMock)
->willReturnSelf();
- $this->messageManagerMock
- ->method('addSuccess')
+ $this->messageManagerMock->method('addSuccess')
->with($successMessage)
->willReturnSelf();
- $this->messageManagerMock
- ->expects($this->never())
+ $this->messageManagerMock->expects($this->never())
->method('addException');
- $this->urlMock
- ->method('getUrl')
+ $this->urlMock->method('getUrl')
->willReturnMap([
['customer/address/edit', null, 'http://store.web/customer/address/edit'],
['*/*/admin', ['_secure' => true], 'http://store.web/back'],
['*/*/index', ['_secure' => true], $successUrl]
]);
+ $this->logMock->expects($this->once())
+ ->method('getLastLoginAt')
+ ->willReturn($lastLoginAt);
+ $this->customerLoggerMock->expects($this->once())
+ ->method('get')
+ ->with(1)
+ ->willReturn($this->logMock);
+
$this->storeMock->expects($this->any())
->method('getFrontendName')
->willReturn('frontend');
@@ -500,10 +538,7 @@ public function testSuccessRedirect(
$this->scopeConfigMock->expects($this->any())
->method('isSetFlag')
- ->with(
- Url::XML_PATH_CUSTOMER_STARTUP_REDIRECT_TO_DASHBOARD,
- ScopeInterface::SCOPE_STORE
- )
+ ->with(Url::XML_PATH_CUSTOMER_STARTUP_REDIRECT_TO_DASHBOARD, ScopeInterface::SCOPE_STORE)
->willReturn($isSetFlag);
$cookieMetadataManager = $this->getMockBuilder(PhpCookieManager::class)
@@ -535,6 +570,7 @@ public function getSuccessRedirectDataProvider(): array
null,
'http://example.com/back',
true,
+ null,
__('Thank you for registering with %1.', 'frontend'),
],
[
@@ -544,6 +580,7 @@ public function getSuccessRedirectDataProvider(): array
'http://example.com/success',
'http://example.com/success',
true,
+ null,
__('Thank you for registering with %1.', 'frontend'),
],
[
@@ -553,7 +590,18 @@ public function getSuccessRedirectDataProvider(): array
'http://example.com/success',
'http://example.com/success',
false,
+ null,
__('Thank you for registering with %1.', 'frontend'),
+ ],
+ [
+ 1,
+ 1,
+ null,
+ 'http://example.com/success',
+ 'http://example.com/success',
+ false,
+ 'some data',
+ null,
]
];
}
diff --git a/app/code/Magento/Customer/Test/Unit/Model/Plugin/CustomerNotificationTest.php b/app/code/Magento/Customer/Test/Unit/Model/Plugin/CustomerNotificationTest.php
index 35f9b0b8371c3..c7ae84b1fa0c2 100644
--- a/app/code/Magento/Customer/Test/Unit/Model/Plugin/CustomerNotificationTest.php
+++ b/app/code/Magento/Customer/Test/Unit/Model/Plugin/CustomerNotificationTest.php
@@ -20,7 +20,13 @@
use PHPUnit\Framework\MockObject\MockObject;
use PHPUnit\Framework\TestCase;
use Psr\Log\LoggerInterface;
+use Magento\Framework\Session\StorageInterface;
+/**
+ * Unit test for CustomerNotification plugin
+ *
+ * @SuppressWarnings(PHPMD.CouplingBetweenObjects)
+ */
class CustomerNotificationTest extends TestCase
{
private const STUB_CUSTOMER_ID = 1;
@@ -65,6 +71,11 @@ class CustomerNotificationTest extends TestCase
*/
private $plugin;
+ /**
+ * @var StorageInterface|MockObject
+ */
+ private $storage;
+
protected function setUp(): void
{
$this->sessionMock = $this->createMock(Session::class);
@@ -87,19 +98,27 @@ protected function setUp(): void
->with(NotificationStorage::UPDATE_CUSTOMER_SESSION, self::STUB_CUSTOMER_ID)
->willReturn(true);
+ $this->storage = $this
+ ->getMockBuilder(StorageInterface::class)
+ ->addMethods(['getData', 'setData'])
+ ->disableOriginalConstructor()
+ ->getMockForAbstractClass();
+
$this->plugin = new CustomerNotification(
$this->sessionMock,
$this->notificationStorageMock,
$this->appStateMock,
$this->customerRepositoryMock,
$this->loggerMock,
- $this->requestMock
+ $this->requestMock,
+ $this->storage
);
}
public function testBeforeExecute()
{
$customerGroupId = 1;
+ $testSessionId = [uniqid()];
$customerMock = $this->getMockForAbstractClass(CustomerInterface::class);
$customerMock->method('getGroupId')->willReturn($customerGroupId);
@@ -116,6 +135,10 @@ public function testBeforeExecute()
$this->sessionMock->expects($this->once())->method('setCustomerData')->with($customerMock);
$this->sessionMock->expects($this->once())->method('setCustomerGroupId')->with($customerGroupId);
$this->sessionMock->expects($this->once())->method('regenerateId');
+ $this->storage->expects($this->once())->method('getData')->willReturn($testSessionId);
+ $this->storage
+ ->expects($this->once())
+ ->method('setData');
$this->plugin->beforeExecute($this->actionMock);
}
diff --git a/app/code/Magento/Customer/Test/Unit/Plugin/Webapi/Controller/Rest/ValidateCustomerDataTest.php b/app/code/Magento/Customer/Test/Unit/Plugin/Webapi/Controller/Rest/ValidateCustomerDataTest.php
new file mode 100644
index 0000000000000..cda66041ab3c5
--- /dev/null
+++ b/app/code/Magento/Customer/Test/Unit/Plugin/Webapi/Controller/Rest/ValidateCustomerDataTest.php
@@ -0,0 +1,115 @@
+validateCustomerDataObject = ObjectManager::getInstance()->get(ValidateCustomerData::class);
+ $this->reflectionObject = new ReflectionClass(get_class($this->validateCustomerDataObject));
+ }
+
+ /**
+ * Test if the customer Info is valid
+ *
+ * @param array $customerInfo
+ * @param array $result
+ * @dataProvider dataProviderInputData
+ * @throws Exception
+ */
+ public function testValidateInputData(array $customerInfo, array $result)
+ {
+ $this->assertEquals(
+ $result,
+ $this->invokeValidateInputData('validateInputData', [$customerInfo])
+ );
+ }
+
+ /**
+ * @param string $methodName
+ * @param array $arguments
+ * @return mixed
+ * @throws Exception
+ */
+ private function invokeValidateInputData(string $methodName, array $arguments = [])
+ {
+ $validateInputDataMethod = $this->reflectionObject->getMethod($methodName);
+ $validateInputDataMethod->setAccessible(true);
+ return $validateInputDataMethod->invokeArgs($this->validateCustomerDataObject, $arguments);
+ }
+
+ /**
+ * @return array
+ */
+ public function dataProviderInputData(): array
+ {
+ return [
+ [
+ ['customer' =>
+ [
+ 'id' => -1,
+ 'Id' => 1,
+ 'name' =>
+ [
+ 'firstName' => 'Test',
+ 'LastName' => 'user'
+ ],
+ 'isHavingOwnHouse' => 1,
+ 'address' =>
+ [
+ 'street' => '1st Street',
+ 'Street' => '3rd Street',
+ 'city' => 'London'
+ ],
+ ]
+ ],
+ ['customer' =>
+ [
+ 'id' => -1,
+ 'name' =>
+ [
+ 'firstName' => 'Test',
+ 'LastName' => 'user'
+ ],
+ 'isHavingOwnHouse' => 1,
+ 'address' =>
+ [
+ 'street' => '1st Street',
+ 'city' => 'London'
+ ],
+ ]
+ ],
+ ]
+ ];
+ }
+}
diff --git a/app/code/Magento/Customer/composer.json b/app/code/Magento/Customer/composer.json
index 2d76da56bff7d..1433351bcecb5 100644
--- a/app/code/Magento/Customer/composer.json
+++ b/app/code/Magento/Customer/composer.json
@@ -1,41 +1,42 @@
{
"name": "magento/module-customer",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "103.0.5-p1",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-authorization": "*",
- "magento/module-backend": "*",
- "magento/module-catalog": "*",
- "magento/module-checkout": "*",
- "magento/module-config": "*",
- "magento/module-directory": "*",
- "magento/module-eav": "*",
- "magento/module-integration": "*",
- "magento/module-media-storage": "*",
- "magento/module-newsletter": "*",
- "magento/module-page-cache": "*",
- "magento/module-quote": "*",
- "magento/module-sales": "*",
- "magento/module-store": "*",
- "magento/module-tax": "*",
- "magento/module-theme": "*",
- "magento/module-ui": "*",
- "magento/module-wishlist": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-authorization": "100.4.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-checkout": "100.4.*",
+ "magento/module-config": "101.2.*",
+ "magento/module-directory": "100.4.*",
+ "magento/module-eav": "102.1.*",
+ "magento/module-integration": "100.4.*",
+ "magento/module-media-storage": "100.4.*",
+ "magento/module-newsletter": "100.4.*",
+ "magento/module-page-cache": "100.4.*",
+ "magento/module-quote": "101.2.*",
+ "magento/module-sales": "103.0.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-tax": "100.4.*",
+ "magento/module-theme": "101.1.*",
+ "magento/module-ui": "101.2.*",
+ "magento/module-wishlist": "101.2.*"
},
"suggest": {
- "magento/module-cookie": "*",
- "magento/module-customer-sample-data": "*",
- "magento/module-webapi": "*"
+ "magento/module-cookie": "100.4.*",
+ "magento/module-customer-sample-data": "Sample Data version: 100.4.*",
+ "magento/module-webapi": "100.4.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -45,3 +46,4 @@
}
}
}
+
diff --git a/app/code/Magento/Customer/etc/adminhtml/system.xml b/app/code/Magento/Customer/etc/adminhtml/system.xml
index 569f9d09c2087..ec76e09fdf459 100644
--- a/app/code/Magento/Customer/etc/adminhtml/system.xml
+++ b/app/code/Magento/Customer/etc/adminhtml/system.xml
@@ -193,6 +193,10 @@
Email template chosen based on theme fallback when "Default" option is selected.
Magento\Config\Model\Config\Source\Email\Template
+
+
+ Magento\Config\Model\Config\Source\Yesno
+
diff --git a/app/code/Magento/Customer/etc/config.xml b/app/code/Magento/Customer/etc/config.xml
index 22596e0b901b2..23a7c9ebb4034 100644
--- a/app/code/Magento/Customer/etc/config.xml
+++ b/app/code/Magento/Customer/etc/config.xml
@@ -32,6 +32,7 @@
customer_account_information_change_email_template
customer_account_information_change_email_and_password_template
+ 0
support
diff --git a/app/code/Magento/Customer/etc/frontend/di.xml b/app/code/Magento/Customer/etc/frontend/di.xml
index 31f3e11522e12..827a153e94674 100644
--- a/app/code/Magento/Customer/etc/frontend/di.xml
+++ b/app/code/Magento/Customer/etc/frontend/di.xml
@@ -127,4 +127,7 @@
+
+
+
diff --git a/app/code/Magento/Customer/etc/webapi_rest/di.xml b/app/code/Magento/Customer/etc/webapi_rest/di.xml
index 18627b68320ed..c5d7a28a3651d 100644
--- a/app/code/Magento/Customer/etc/webapi_rest/di.xml
+++ b/app/code/Magento/Customer/etc/webapi_rest/di.xml
@@ -31,6 +31,9 @@
+
+
+
diff --git a/app/code/Magento/CustomerAnalytics/composer.json b/app/code/Magento/CustomerAnalytics/composer.json
index 396c7d4ca3364..c866756b082c0 100644
--- a/app/code/Magento/CustomerAnalytics/composer.json
+++ b/app/code/Magento/CustomerAnalytics/composer.json
@@ -1,17 +1,18 @@
{
"name": "magento/module-customer-analytics",
"description": "N/A",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-customer": "*",
- "magento/module-analytics": "*"
- },
"type": "magento2-module",
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.2",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/framework": "103.0.*",
+ "magento/module-customer": "103.0.*",
+ "magento/module-analytics": "100.4.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -21,3 +22,4 @@
}
}
}
+
diff --git a/app/code/Magento/CustomerDownloadableGraphQl/composer.json b/app/code/Magento/CustomerDownloadableGraphQl/composer.json
index f33d05e18568a..80d7dc4632e6b 100644
--- a/app/code/Magento/CustomerDownloadableGraphQl/composer.json
+++ b/app/code/Magento/CustomerDownloadableGraphQl/composer.json
@@ -2,19 +2,20 @@
"name": "magento/module-customer-downloadable-graph-ql",
"description": "N/A",
"type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
+ "version": "100.4.1",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/module-downloadable-graph-ql": "*",
- "magento/module-graph-ql": "*",
- "magento/framework": "*"
+ "magento/module-downloadable-graph-ql": "100.4.*",
+ "magento/module-graph-ql": "100.4.*",
+ "magento/framework": "103.0.*"
},
"suggest": {
- "magento/module-catalog-graph-ql": "*"
+ "magento/module-catalog-graph-ql": "100.4.*"
},
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -24,3 +25,4 @@
}
}
}
+
diff --git a/app/code/Magento/CustomerGraphQl/composer.json b/app/code/Magento/CustomerGraphQl/composer.json
index 30d94c20acc98..458f84ff0815f 100644
--- a/app/code/Magento/CustomerGraphQl/composer.json
+++ b/app/code/Magento/CustomerGraphQl/composer.json
@@ -2,24 +2,25 @@
"name": "magento/module-customer-graph-ql",
"description": "N/A",
"type": "magento2-module",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/module-authorization": "*",
- "magento/module-customer": "*",
- "magento/module-eav": "*",
- "magento/module-graph-ql": "*",
- "magento/module-newsletter": "*",
- "magento/module-integration": "*",
- "magento/module-store": "*",
- "magento/framework": "*",
- "magento/module-directory": "*",
- "magento/module-tax": "*",
- "magento/module-graph-ql-cache": "*"
- },
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.5",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/module-authorization": "100.4.*",
+ "magento/module-customer": "103.0.*",
+ "magento/module-eav": "102.1.*",
+ "magento/module-graph-ql": "100.4.*",
+ "magento/module-newsletter": "100.4.*",
+ "magento/module-integration": "100.4.*",
+ "magento/module-store": "101.1.*",
+ "magento/framework": "103.0.*",
+ "magento/module-directory": "100.4.*",
+ "magento/module-tax": "100.4.*",
+ "magento/module-graph-ql-cache": "100.4.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -29,3 +30,4 @@
}
}
}
+
diff --git a/app/code/Magento/CustomerImportExport/composer.json b/app/code/Magento/CustomerImportExport/composer.json
index 2f5c74020e602..e02d71b15fa46 100644
--- a/app/code/Magento/CustomerImportExport/composer.json
+++ b/app/code/Magento/CustomerImportExport/composer.json
@@ -1,24 +1,25 @@
{
"name": "magento/module-customer-import-export",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-backend": "*",
- "magento/module-customer": "*",
- "magento/module-directory": "*",
- "magento/module-eav": "*",
- "magento/module-import-export": "*",
- "magento/module-store": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-customer": "103.0.*",
+ "magento/module-directory": "100.4.*",
+ "magento/module-eav": "102.1.*",
+ "magento/module-import-export": "101.0.*",
+ "magento/module-store": "101.1.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -28,3 +29,4 @@
}
}
}
+
diff --git a/app/code/Magento/Deploy/composer.json b/app/code/Magento/Deploy/composer.json
index e965b6222e375..fe8428363a3fa 100644
--- a/app/code/Magento/Deploy/composer.json
+++ b/app/code/Magento/Deploy/composer.json
@@ -1,22 +1,23 @@
{
"name": "magento/module-deploy",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-config": "*",
- "magento/module-require-js": "*",
- "magento/module-store": "*",
- "magento/module-user": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-config": "101.2.*",
+ "magento/module-require-js": "100.4.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-user": "101.2.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"cli_commands.php",
@@ -27,3 +28,4 @@
}
}
}
+
diff --git a/app/code/Magento/Developer/composer.json b/app/code/Magento/Developer/composer.json
index 49b9d324f0d11..3b8fc9acef793 100644
--- a/app/code/Magento/Developer/composer.json
+++ b/app/code/Magento/Developer/composer.json
@@ -1,20 +1,21 @@
{
"name": "magento/module-developer",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-config": "*",
- "magento/module-store": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-config": "101.2.*",
+ "magento/module-store": "101.1.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -24,3 +25,4 @@
}
}
}
+
diff --git a/app/code/Magento/Dhl/composer.json b/app/code/Magento/Dhl/composer.json
index 9596f789be5fc..a869bb14a1019 100644
--- a/app/code/Magento/Dhl/composer.json
+++ b/app/code/Magento/Dhl/composer.json
@@ -1,31 +1,32 @@
{
"name": "magento/module-dhl",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.4",
"require": {
"php": "~7.4.0||~8.1.0",
"lib-libxml": "*",
- "magento/framework": "*",
- "magento/module-backend": "*",
- "magento/module-catalog": "*",
- "magento/module-catalog-inventory": "*",
- "magento/module-config": "*",
- "magento/module-directory": "*",
- "magento/module-quote": "*",
- "magento/module-sales": "*",
- "magento/module-shipping": "*",
- "magento/module-store": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-catalog-inventory": "100.4.*",
+ "magento/module-config": "101.2.*",
+ "magento/module-directory": "100.4.*",
+ "magento/module-quote": "101.2.*",
+ "magento/module-sales": "103.0.*",
+ "magento/module-shipping": "100.4.*",
+ "magento/module-store": "101.1.*"
},
"suggest": {
- "magento/module-checkout": "*"
+ "magento/module-checkout": "100.4.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -35,3 +36,4 @@
}
}
}
+
diff --git a/app/code/Magento/Directory/composer.json b/app/code/Magento/Directory/composer.json
index c3973b9cee0c9..5d64c79182eba 100644
--- a/app/code/Magento/Directory/composer.json
+++ b/app/code/Magento/Directory/composer.json
@@ -1,22 +1,23 @@
{
"name": "magento/module-directory",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.5",
"require": {
"php": "~7.4.0||~8.1.0",
"lib-libxml": "*",
- "magento/framework": "*",
- "magento/module-backend": "*",
- "magento/module-config": "*",
- "magento/module-store": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-config": "101.2.*",
+ "magento/module-store": "101.1.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -26,3 +27,4 @@
}
}
}
+
diff --git a/app/code/Magento/DirectoryGraphQl/composer.json b/app/code/Magento/DirectoryGraphQl/composer.json
index 6acbef5c5534c..bdcce07341439 100644
--- a/app/code/Magento/DirectoryGraphQl/composer.json
+++ b/app/code/Magento/DirectoryGraphQl/composer.json
@@ -2,17 +2,18 @@
"name": "magento/module-directory-graph-ql",
"description": "N/A",
"type": "magento2-module",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/module-directory": "*",
- "magento/module-store": "*",
- "magento/module-graph-ql": "*",
- "magento/framework": "*"
- },
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.3",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/module-directory": "100.4.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-graph-ql": "100.4.*",
+ "magento/framework": "103.0.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -22,3 +23,4 @@
}
}
}
+
diff --git a/app/code/Magento/Downloadable/composer.json b/app/code/Magento/Downloadable/composer.json
index a9487f8c430d3..15d67030e173b 100644
--- a/app/code/Magento/Downloadable/composer.json
+++ b/app/code/Magento/Downloadable/composer.json
@@ -1,37 +1,38 @@
{
"name": "magento/module-downloadable",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-backend": "*",
- "magento/module-catalog": "*",
- "magento/module-catalog-inventory": "*",
- "magento/module-checkout": "*",
- "magento/module-config": "*",
- "magento/module-customer": "*",
- "magento/module-directory": "*",
- "magento/module-eav": "*",
- "magento/module-gift-message": "*",
- "magento/module-media-storage": "*",
- "magento/module-quote": "*",
- "magento/module-sales": "*",
- "magento/module-store": "*",
- "magento/module-tax": "*",
- "magento/module-theme": "*",
- "magento/module-ui": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-catalog-inventory": "100.4.*",
+ "magento/module-checkout": "100.4.*",
+ "magento/module-config": "101.2.*",
+ "magento/module-customer": "103.0.*",
+ "magento/module-directory": "100.4.*",
+ "magento/module-eav": "102.1.*",
+ "magento/module-gift-message": "100.4.*",
+ "magento/module-media-storage": "100.4.*",
+ "magento/module-quote": "101.2.*",
+ "magento/module-sales": "103.0.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-tax": "100.4.*",
+ "magento/module-theme": "101.1.*",
+ "magento/module-ui": "101.2.*"
},
"suggest": {
- "magento/module-downloadable-sample-data": "*"
+ "magento/module-downloadable-sample-data": "Sample Data version: 100.4.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -41,3 +42,4 @@
}
}
}
+
diff --git a/app/code/Magento/DownloadableGraphQl/composer.json b/app/code/Magento/DownloadableGraphQl/composer.json
index 214b857bcd6f9..12c33eb3f184a 100644
--- a/app/code/Magento/DownloadableGraphQl/composer.json
+++ b/app/code/Magento/DownloadableGraphQl/composer.json
@@ -2,24 +2,25 @@
"name": "magento/module-downloadable-graph-ql",
"description": "N/A",
"type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
+ "version": "100.4.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/module-store": "*",
- "magento/module-catalog": "*",
- "magento/module-downloadable": "*",
- "magento/module-quote": "*",
- "magento/module-sales": "*",
- "magento/module-quote-graph-ql": "*",
- "magento/framework": "*"
+ "magento/module-store": "101.1.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-downloadable": "100.4.*",
+ "magento/module-quote": "101.2.*",
+ "magento/module-sales": "103.0.*",
+ "magento/module-quote-graph-ql": "100.4.*",
+ "magento/framework": "103.0.*"
},
"suggest": {
- "magento/module-catalog-graph-ql": "*",
- "magento/module-sales-graph-ql": "*"
+ "magento/module-catalog-graph-ql": "100.4.*",
+ "magento/module-sales-graph-ql": "100.4.*"
},
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -29,3 +30,4 @@
}
}
}
+
diff --git a/app/code/Magento/DownloadableImportExport/composer.json b/app/code/Magento/DownloadableImportExport/composer.json
index d6daea4b2ac17..85b8a6502b917 100644
--- a/app/code/Magento/DownloadableImportExport/composer.json
+++ b/app/code/Magento/DownloadableImportExport/composer.json
@@ -1,24 +1,25 @@
{
"name": "magento/module-downloadable-import-export",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.4",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-catalog": "*",
- "magento/module-catalog-import-export": "*",
- "magento/module-downloadable": "*",
- "magento/module-eav": "*",
- "magento/module-import-export": "*",
- "magento/module-store": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-catalog-import-export": "101.1.*",
+ "magento/module-downloadable": "100.4.*",
+ "magento/module-eav": "102.1.*",
+ "magento/module-import-export": "101.0.*",
+ "magento/module-store": "101.1.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -28,3 +29,4 @@
}
}
}
+
diff --git a/app/code/Magento/Eav/composer.json b/app/code/Magento/Eav/composer.json
index 60915bd4ba590..bea1c5502ae62 100644
--- a/app/code/Magento/Eav/composer.json
+++ b/app/code/Magento/Eav/composer.json
@@ -1,23 +1,24 @@
{
"name": "magento/module-eav",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "102.1.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-backend": "*",
- "magento/module-catalog": "*",
- "magento/module-config": "*",
- "magento/module-media-storage": "*",
- "magento/module-store": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-config": "101.2.*",
+ "magento/module-media-storage": "100.4.*",
+ "magento/module-store": "101.1.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -27,3 +28,4 @@
}
}
}
+
diff --git a/app/code/Magento/EavGraphQl/composer.json b/app/code/Magento/EavGraphQl/composer.json
index cfb8dc7ac9e11..40033f8c3cffa 100644
--- a/app/code/Magento/EavGraphQl/composer.json
+++ b/app/code/Magento/EavGraphQl/composer.json
@@ -2,18 +2,19 @@
"name": "magento/module-eav-graph-ql",
"description": "N/A",
"type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
+ "version": "100.4.2",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-eav": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-eav": "102.1.*"
},
"suggest": {
- "magento/module-graph-ql": "*"
+ "magento/module-graph-ql": "100.4.*"
},
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -23,3 +24,4 @@
}
}
}
+
diff --git a/app/code/Magento/Elasticsearch/composer.json b/app/code/Magento/Elasticsearch/composer.json
index 30e0899981e6b..6329165421eb4 100644
--- a/app/code/Magento/Elasticsearch/composer.json
+++ b/app/code/Magento/Elasticsearch/composer.json
@@ -1,27 +1,28 @@
{
"name": "magento/module-elasticsearch",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
+ "version": "101.0.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/module-advanced-search": "*",
- "magento/module-catalog": "*",
- "magento/module-catalog-search": "*",
- "magento/module-customer": "*",
- "magento/module-eav": "*",
- "magento/module-search": "*",
- "magento/module-store": "*",
- "magento/module-catalog-inventory": "*",
- "magento/framework": "*",
+ "magento/module-advanced-search": "100.4.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-catalog-search": "102.0.*",
+ "magento/module-customer": "103.0.*",
+ "magento/module-eav": "102.1.*",
+ "magento/module-search": "101.1.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-catalog-inventory": "100.4.*",
+ "magento/framework": "103.0.*",
"elasticsearch/elasticsearch": "~7.17.0"
},
"suggest": {
- "magento/module-config": "*"
+ "magento/module-config": "101.2.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -31,3 +32,4 @@
}
}
}
+
diff --git a/app/code/Magento/Elasticsearch6/composer.json b/app/code/Magento/Elasticsearch6/composer.json
index 80eb60946a759..d9fb8cda96eaa 100644
--- a/app/code/Magento/Elasticsearch6/composer.json
+++ b/app/code/Magento/Elasticsearch6/composer.json
@@ -1,23 +1,24 @@
{
"name": "magento/module-elasticsearch-6",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
+ "version": "100.4.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-advanced-search": "*",
- "magento/module-catalog-search": "*",
- "magento/module-search": "*",
- "magento/module-elasticsearch": "*",
+ "magento/framework": "103.0.*",
+ "magento/module-advanced-search": "100.4.*",
+ "magento/module-catalog-search": "102.0.*",
+ "magento/module-search": "101.1.*",
+ "magento/module-elasticsearch": "101.0.*",
"elasticsearch/elasticsearch": "~7.17.0"
},
"suggest": {
- "magento/module-config": "*"
+ "magento/module-config": "101.2.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -27,3 +28,4 @@
}
}
}
+
diff --git a/app/code/Magento/Elasticsearch7/composer.json b/app/code/Magento/Elasticsearch7/composer.json
index 69690fcf2aff8..8d9bf5ef63091 100644
--- a/app/code/Magento/Elasticsearch7/composer.json
+++ b/app/code/Magento/Elasticsearch7/composer.json
@@ -1,23 +1,24 @@
{
"name": "magento/module-elasticsearch-7",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
+ "version": "100.4.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-elasticsearch": "*",
+ "magento/framework": "103.0.*",
+ "magento/module-elasticsearch": "101.0.*",
"elasticsearch/elasticsearch": "~7.17.0",
- "magento/module-advanced-search": "*",
- "magento/module-catalog-search": "*"
+ "magento/module-advanced-search": "100.4.*",
+ "magento/module-catalog-search": "102.0.*"
},
"suggest": {
- "magento/module-config": "*",
- "magento/module-search": "*"
+ "magento/module-config": "101.2.*",
+ "magento/module-search": "101.1.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -27,3 +28,4 @@
}
}
}
+
diff --git a/app/code/Magento/Email/composer.json b/app/code/Magento/Email/composer.json
index 4499b1060a011..450bcb74ec788 100644
--- a/app/code/Magento/Email/composer.json
+++ b/app/code/Magento/Email/composer.json
@@ -1,30 +1,31 @@
{
"name": "magento/module-email",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "101.1.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-backend": "*",
- "magento/module-cms": "*",
- "magento/module-config": "*",
- "magento/module-store": "*",
- "magento/module-theme": "*",
- "magento/module-require-js": "*",
- "magento/module-media-storage": "*",
- "magento/module-variable": "*",
- "magento/module-ui": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-cms": "104.0.*",
+ "magento/module-config": "101.2.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-theme": "101.1.*",
+ "magento/module-require-js": "100.4.*",
+ "magento/module-media-storage": "100.4.*",
+ "magento/module-variable": "100.4.*",
+ "magento/module-ui": "101.2.*"
},
"suggest": {
- "magento/module-theme": "*"
+ "magento/module-theme": "101.1.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -34,3 +35,4 @@
}
}
}
+
diff --git a/app/code/Magento/EncryptionKey/composer.json b/app/code/Magento/EncryptionKey/composer.json
index c20cd852d2377..8d573ed694420 100644
--- a/app/code/Magento/EncryptionKey/composer.json
+++ b/app/code/Magento/EncryptionKey/composer.json
@@ -1,20 +1,21 @@
{
"name": "magento/module-encryption-key",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.3",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-backend": "*",
- "magento/module-config": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-config": "101.2.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -24,3 +25,4 @@
}
}
}
+
diff --git a/app/code/Magento/Fedex/composer.json b/app/code/Magento/Fedex/composer.json
index 1734040c2c487..66b3d7d5cab68 100644
--- a/app/code/Magento/Fedex/composer.json
+++ b/app/code/Magento/Fedex/composer.json
@@ -1,27 +1,28 @@
{
"name": "magento/module-fedex",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.3",
"require": {
"php": "~7.4.0||~8.1.0",
"lib-libxml": "*",
- "magento/framework": "*",
- "magento/module-catalog": "*",
- "magento/module-catalog-inventory": "*",
- "magento/module-config": "*",
- "magento/module-directory": "*",
- "magento/module-quote": "*",
- "magento/module-sales": "*",
- "magento/module-shipping": "*",
- "magento/module-store": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-catalog-inventory": "100.4.*",
+ "magento/module-config": "101.2.*",
+ "magento/module-directory": "100.4.*",
+ "magento/module-quote": "101.2.*",
+ "magento/module-sales": "103.0.*",
+ "magento/module-shipping": "100.4.*",
+ "magento/module-store": "101.1.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -31,3 +32,4 @@
}
}
}
+
diff --git a/app/code/Magento/GiftMessage/composer.json b/app/code/Magento/GiftMessage/composer.json
index f205f2f4621d2..36cef4663935d 100644
--- a/app/code/Magento/GiftMessage/composer.json
+++ b/app/code/Magento/GiftMessage/composer.json
@@ -1,30 +1,31 @@
{
"name": "magento/module-gift-message",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.4",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-backend": "*",
- "magento/module-catalog": "*",
- "magento/module-checkout": "*",
- "magento/module-customer": "*",
- "magento/module-quote": "*",
- "magento/module-sales": "*",
- "magento/module-store": "*",
- "magento/module-ui": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-checkout": "100.4.*",
+ "magento/module-customer": "103.0.*",
+ "magento/module-quote": "101.2.*",
+ "magento/module-sales": "103.0.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-ui": "101.2.*"
},
"suggest": {
- "magento/module-eav": "*",
- "magento/module-multishipping": "*"
+ "magento/module-eav": "102.1.*",
+ "magento/module-multishipping": "100.4.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -34,3 +35,4 @@
}
}
}
+
diff --git a/app/code/Magento/GiftMessageGraphQl/composer.json b/app/code/Magento/GiftMessageGraphQl/composer.json
index f9b980d26fa78..8849b1bc57787 100644
--- a/app/code/Magento/GiftMessageGraphQl/composer.json
+++ b/app/code/Magento/GiftMessageGraphQl/composer.json
@@ -2,18 +2,19 @@
"name": "magento/module-gift-message-graph-ql",
"description": "N/A",
"type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
+ "version": "100.4.3",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-gift-message": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-gift-message": "100.4.*"
},
"suggest": {
- "magento/module-graph-ql": "*"
+ "magento/module-graph-ql": "100.4.*"
},
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -23,3 +24,4 @@
}
}
}
+
diff --git a/app/code/Magento/GoogleAdwords/composer.json b/app/code/Magento/GoogleAdwords/composer.json
index 3637b38f9ab61..973e58065d292 100644
--- a/app/code/Magento/GoogleAdwords/composer.json
+++ b/app/code/Magento/GoogleAdwords/composer.json
@@ -1,20 +1,21 @@
{
"name": "magento/module-google-adwords",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.2",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-sales": "*",
- "magento/module-store": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-sales": "103.0.*",
+ "magento/module-store": "101.1.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -24,3 +25,4 @@
}
}
}
+
diff --git a/app/code/Magento/GoogleAnalytics/composer.json b/app/code/Magento/GoogleAnalytics/composer.json
index bb94435c9e9fd..9f96b7fe681c2 100644
--- a/app/code/Magento/GoogleAnalytics/composer.json
+++ b/app/code/Magento/GoogleAnalytics/composer.json
@@ -1,24 +1,25 @@
{
"name": "magento/module-google-analytics",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.1",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-cookie": "*",
- "magento/module-sales": "*",
- "magento/module-store": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-cookie": "100.4.*",
+ "magento/module-sales": "103.0.*",
+ "magento/module-store": "101.1.*"
},
"suggest": {
- "magento/module-config": "*"
+ "magento/module-config": "101.2.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -28,3 +29,4 @@
}
}
}
+
diff --git a/app/code/Magento/GoogleGtag/composer.json b/app/code/Magento/GoogleGtag/composer.json
index 13abce5dbf570..264798a90d62e 100644
--- a/app/code/Magento/GoogleGtag/composer.json
+++ b/app/code/Magento/GoogleGtag/composer.json
@@ -1,24 +1,25 @@
{
"name": "magento/module-google-gtag",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.0",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-cookie": "*",
- "magento/module-sales": "*",
- "magento/module-store": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-cookie": "100.4.*",
+ "magento/module-sales": "103.0.*",
+ "magento/module-store": "101.1.*"
},
"suggest": {
- "magento/module-config": "*"
+ "magento/module-config": "101.2.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -28,3 +29,4 @@
}
}
}
+
diff --git a/app/code/Magento/GoogleOptimizer/composer.json b/app/code/Magento/GoogleOptimizer/composer.json
index 7afe12358fa53..9e7e67fef7d16 100644
--- a/app/code/Magento/GoogleOptimizer/composer.json
+++ b/app/code/Magento/GoogleOptimizer/composer.json
@@ -1,25 +1,26 @@
{
"name": "magento/module-google-optimizer",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.4",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-backend": "*",
- "magento/module-catalog": "*",
- "magento/module-cms": "*",
- "magento/module-google-analytics": "*",
- "magento/module-google-gtag": "*",
- "magento/module-store": "*",
- "magento/module-ui": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-cms": "104.0.*",
+ "magento/module-google-analytics": "100.4.*",
+ "magento/module-google-gtag": "100.4.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-ui": "101.2.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -29,3 +30,4 @@
}
}
}
+
diff --git a/app/code/Magento/GraphQl/composer.json b/app/code/Magento/GraphQl/composer.json
index 1a962eedc5d5a..e3790526a4b25 100644
--- a/app/code/Magento/GraphQl/composer.json
+++ b/app/code/Magento/GraphQl/composer.json
@@ -2,22 +2,23 @@
"name": "magento/module-graph-ql",
"description": "N/A",
"type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
+ "version": "100.4.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/module-eav": "*",
- "magento/framework": "*",
- "magento/module-webapi": "*",
- "magento/module-new-relic-reporting": "*",
- "magento/module-authorization": "*",
+ "magento/module-eav": "102.1.*",
+ "magento/framework": "103.0.*",
+ "magento/module-webapi": "100.4.*",
+ "magento/module-new-relic-reporting": "100.4.*",
+ "magento/module-authorization": "100.4.*",
"webonyx/graphql-php": "~14.11.5"
},
"suggest": {
- "magento/module-graph-ql-cache": "*"
+ "magento/module-graph-ql-cache": "100.4.*"
},
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -27,3 +28,4 @@
}
}
}
+
diff --git a/app/code/Magento/GraphQlCache/composer.json b/app/code/Magento/GraphQlCache/composer.json
index 5be26cbf5990d..a945bb71b09f9 100644
--- a/app/code/Magento/GraphQlCache/composer.json
+++ b/app/code/Magento/GraphQlCache/composer.json
@@ -2,18 +2,19 @@
"name": "magento/module-graph-ql-cache",
"description": "N/A",
"type": "magento2-module",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-page-cache": "*",
- "magento/module-graph-ql": "*",
- "magento/module-authorization": "*",
- "magento/module-integration": "*"
- },
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.2",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/framework": "103.0.*",
+ "magento/module-page-cache": "100.4.*",
+ "magento/module-graph-ql": "100.4.*",
+ "magento/module-authorization": "100.4.*",
+ "magento/module-integration": "100.4.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -23,3 +24,4 @@
}
}
}
+
diff --git a/app/code/Magento/GroupedCatalogInventory/composer.json b/app/code/Magento/GroupedCatalogInventory/composer.json
index 1a5e6054130eb..706ae7743d48a 100644
--- a/app/code/Magento/GroupedCatalogInventory/composer.json
+++ b/app/code/Magento/GroupedCatalogInventory/composer.json
@@ -1,21 +1,22 @@
{
"name": "magento/module-grouped-catalog-inventory",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.2",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-catalog": "*",
- "magento/module-catalog-inventory": "*",
- "magento/module-grouped-product": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-catalog-inventory": "100.4.*",
+ "magento/module-grouped-product": "100.4.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -25,3 +26,4 @@
}
}
}
+
diff --git a/app/code/Magento/GroupedImportExport/composer.json b/app/code/Magento/GroupedImportExport/composer.json
index e411f55d00f4e..8c729fcdb8de8 100644
--- a/app/code/Magento/GroupedImportExport/composer.json
+++ b/app/code/Magento/GroupedImportExport/composer.json
@@ -1,23 +1,24 @@
{
"name": "magento/module-grouped-import-export",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.3",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-catalog": "*",
- "magento/module-catalog-import-export": "*",
- "magento/module-eav": "*",
- "magento/module-grouped-product": "*",
- "magento/module-import-export": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-catalog-import-export": "101.1.*",
+ "magento/module-eav": "102.1.*",
+ "magento/module-grouped-product": "100.4.*",
+ "magento/module-import-export": "101.0.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -27,3 +28,4 @@
}
}
}
+
diff --git a/app/code/Magento/GroupedProduct/composer.json b/app/code/Magento/GroupedProduct/composer.json
index 105e711c75b41..61e9e5af41eeb 100644
--- a/app/code/Magento/GroupedProduct/composer.json
+++ b/app/code/Magento/GroupedProduct/composer.json
@@ -1,34 +1,35 @@
{
"name": "magento/module-grouped-product",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-backend": "*",
- "magento/module-catalog": "*",
- "magento/module-catalog-inventory": "*",
- "magento/module-checkout": "*",
- "magento/module-customer": "*",
- "magento/module-eav": "*",
- "magento/module-media-storage": "*",
- "magento/module-msrp": "*",
- "magento/module-quote": "*",
- "magento/module-sales": "*",
- "magento/module-store": "*",
- "magento/module-ui": "*",
- "magento/module-wishlist": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-catalog-inventory": "100.4.*",
+ "magento/module-checkout": "100.4.*",
+ "magento/module-customer": "103.0.*",
+ "magento/module-eav": "102.1.*",
+ "magento/module-media-storage": "100.4.*",
+ "magento/module-msrp": "100.4.*",
+ "magento/module-quote": "101.2.*",
+ "magento/module-sales": "103.0.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-ui": "101.2.*",
+ "magento/module-wishlist": "101.2.*"
},
"suggest": {
- "magento/module-grouped-product-sample-data": "*"
+ "magento/module-grouped-product-sample-data": "Sample Data version: 100.4.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -38,3 +39,4 @@
}
}
}
+
diff --git a/app/code/Magento/GroupedProductGraphQl/composer.json b/app/code/Magento/GroupedProductGraphQl/composer.json
index bb0f79e208dcb..bd0cb92ebb385 100644
--- a/app/code/Magento/GroupedProductGraphQl/composer.json
+++ b/app/code/Magento/GroupedProductGraphQl/composer.json
@@ -2,17 +2,18 @@
"name": "magento/module-grouped-product-graph-ql",
"description": "N/A",
"type": "magento2-module",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/module-grouped-product": "*",
- "magento/module-catalog": "*",
- "magento/module-catalog-graph-ql": "*",
- "magento/framework": "*"
- },
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.5",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/module-grouped-product": "100.4.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-catalog-graph-ql": "100.4.*",
+ "magento/framework": "103.0.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -22,3 +23,4 @@
}
}
}
+
diff --git a/app/code/Magento/ImportExport/composer.json b/app/code/Magento/ImportExport/composer.json
index b85162e9bec76..f0e2a6ff080d3 100644
--- a/app/code/Magento/ImportExport/composer.json
+++ b/app/code/Magento/ImportExport/composer.json
@@ -1,25 +1,26 @@
{
"name": "magento/module-import-export",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "101.0.5",
"require": {
"php": "~7.4.0||~8.1.0",
"ext-ctype": "*",
- "magento/framework": "*",
- "magento/module-backend": "*",
- "magento/module-catalog": "*",
- "magento/module-eav": "*",
- "magento/module-media-storage": "*",
- "magento/module-store": "*",
- "magento/module-ui": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-eav": "102.1.*",
+ "magento/module-media-storage": "100.4.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-ui": "101.2.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -29,3 +30,4 @@
}
}
}
+
diff --git a/app/code/Magento/Indexer/composer.json b/app/code/Magento/Indexer/composer.json
index bdcd05d5a71e3..444781023aafe 100644
--- a/app/code/Magento/Indexer/composer.json
+++ b/app/code/Magento/Indexer/composer.json
@@ -1,19 +1,20 @@
{
"name": "magento/module-indexer",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-backend": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-backend": "102.0.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -23,3 +24,4 @@
}
}
}
+
diff --git a/app/code/Magento/InstantPurchase/composer.json b/app/code/Magento/InstantPurchase/composer.json
index c399f60df1dbb..871658755ac9d 100644
--- a/app/code/Magento/InstantPurchase/composer.json
+++ b/app/code/Magento/InstantPurchase/composer.json
@@ -6,16 +6,17 @@
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.4",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/module-store": "*",
- "magento/module-catalog": "*",
- "magento/module-customer": "*",
- "magento/module-sales": "*",
- "magento/module-shipping": "*",
- "magento/module-quote": "*",
- "magento/module-vault": "*",
- "magento/framework": "*"
+ "magento/module-store": "101.1.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-customer": "103.0.*",
+ "magento/module-sales": "103.0.*",
+ "magento/module-shipping": "100.4.*",
+ "magento/module-quote": "101.2.*",
+ "magento/module-vault": "101.2.*",
+ "magento/framework": "103.0.*"
},
"autoload": {
"files": [
@@ -26,3 +27,4 @@
}
}
}
+
diff --git a/app/code/Magento/Integration/composer.json b/app/code/Magento/Integration/composer.json
index d3c226066226f..b28c201109cf9 100644
--- a/app/code/Magento/Integration/composer.json
+++ b/app/code/Magento/Integration/composer.json
@@ -1,25 +1,26 @@
{
"name": "magento/module-integration",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-authorization": "*",
- "magento/module-backend": "*",
- "magento/module-customer": "*",
- "magento/module-security": "*",
- "magento/module-store": "*",
- "magento/module-user": "*",
- "magento/module-ui": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-authorization": "100.4.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-customer": "103.0.*",
+ "magento/module-security": "100.4.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-user": "101.2.*",
+ "magento/module-ui": "101.2.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -29,3 +30,4 @@
}
}
}
+
diff --git a/app/code/Magento/JwtFrameworkAdapter/composer.json b/app/code/Magento/JwtFrameworkAdapter/composer.json
index a375ed0b197a8..2a85dddfe417d 100644
--- a/app/code/Magento/JwtFrameworkAdapter/composer.json
+++ b/app/code/Magento/JwtFrameworkAdapter/composer.json
@@ -1,19 +1,20 @@
{
"name": "magento/module-jwt-framework-adapter",
"description": "JWT Manager implementation based on jwt-framework",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.1",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
+ "magento/framework": "103.0.*",
"web-token/jwt-framework": "^v2.2.7"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -23,3 +24,4 @@
}
}
}
+
diff --git a/app/code/Magento/JwtUserToken/composer.json b/app/code/Magento/JwtUserToken/composer.json
index d632d6e4a49b0..09414a2f64373 100644
--- a/app/code/Magento/JwtUserToken/composer.json
+++ b/app/code/Magento/JwtUserToken/composer.json
@@ -1,20 +1,21 @@
{
"name": "magento/module-jwt-user-token",
"description": "Introduces JWT token support for web API authentication",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.0",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-integration": "*",
- "magento/module-authorization": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-integration": "100.4.*",
+ "magento/module-authorization": "100.4.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -24,3 +25,4 @@
}
}
}
+
diff --git a/app/code/Magento/LayeredNavigation/composer.json b/app/code/Magento/LayeredNavigation/composer.json
index d6285b4260f5f..64fc58224c744 100644
--- a/app/code/Magento/LayeredNavigation/composer.json
+++ b/app/code/Magento/LayeredNavigation/composer.json
@@ -1,20 +1,21 @@
{
"name": "magento/module-layered-navigation",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-catalog": "*",
- "magento/module-config": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-config": "101.2.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -24,3 +25,4 @@
}
}
}
+
diff --git a/app/code/Magento/LoginAsCustomer/composer.json b/app/code/Magento/LoginAsCustomer/composer.json
index 61a4e1c0dda96..7d5e66e254d5f 100755
--- a/app/code/Magento/LoginAsCustomer/composer.json
+++ b/app/code/Magento/LoginAsCustomer/composer.json
@@ -1,21 +1,22 @@
{
"name": "magento/module-login-as-customer",
"description": "Allow for admin to enter a customer account",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-backend": "*",
- "magento/module-customer": "*",
- "magento/module-login-as-customer-api": "*"
- },
- "suggest": {
- "magento/module-backend": "*"
- },
"type": "magento2-module",
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.5",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/framework": "103.0.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-customer": "103.0.*",
+ "magento/module-login-as-customer-api": "100.4.*"
+ },
+ "suggest": {
+ "magento/module-backend": "102.0.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -25,3 +26,4 @@
}
}
}
+
diff --git a/app/code/Magento/LoginAsCustomerAdminUi/composer.json b/app/code/Magento/LoginAsCustomerAdminUi/composer.json
index 6841ee3790cb3..2da57bc1f1eb6 100644
--- a/app/code/Magento/LoginAsCustomerAdminUi/composer.json
+++ b/app/code/Magento/LoginAsCustomerAdminUi/composer.json
@@ -1,24 +1,24 @@
{
"name": "magento/module-login-as-customer-admin-ui",
- "description": "",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-login-as-customer-api": "*",
- "magento/module-login-as-customer-frontend-ui": "*",
- "magento/module-backend": "*",
- "magento/module-customer": "*",
- "magento/module-sales": "*",
- "magento/module-store": "*"
- },
- "suggest": {
- "magento/module-login-as-customer": "*"
- },
"type": "magento2-module",
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.5",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/framework": "103.0.*",
+ "magento/module-login-as-customer-api": "100.4.*",
+ "magento/module-login-as-customer-frontend-ui": "100.4.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-customer": "103.0.*",
+ "magento/module-sales": "103.0.*",
+ "magento/module-store": "101.1.*"
+ },
+ "suggest": {
+ "magento/module-login-as-customer": "100.4.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -28,3 +28,4 @@
}
}
}
+
diff --git a/app/code/Magento/LoginAsCustomerApi/composer.json b/app/code/Magento/LoginAsCustomerApi/composer.json
index e4a0952ac0369..e073fb5e29bab 100644
--- a/app/code/Magento/LoginAsCustomerApi/composer.json
+++ b/app/code/Magento/LoginAsCustomerApi/composer.json
@@ -1,15 +1,16 @@
{
"name": "magento/module-login-as-customer-api",
"description": "Allow for admin to enter a customer account",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/framework": "*"
- },
"type": "magento2-module",
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.4",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/framework": "103.0.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -19,3 +20,4 @@
}
}
}
+
diff --git a/app/code/Magento/LoginAsCustomerAssistance/composer.json b/app/code/Magento/LoginAsCustomerAssistance/composer.json
index 58e48bddc7c0f..e194cbb52936b 100644
--- a/app/code/Magento/LoginAsCustomerAssistance/composer.json
+++ b/app/code/Magento/LoginAsCustomerAssistance/composer.json
@@ -1,24 +1,24 @@
{
"name": "magento/module-login-as-customer-assistance",
- "description": "",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-authorization": "*",
- "magento/module-backend": "*",
- "magento/module-customer": "*",
- "magento/module-store": "*",
- "magento/module-login-as-customer": "*",
- "magento/module-login-as-customer-api": "*"
- },
- "suggest": {
- "magento/module-login-as-customer-admin-ui": "*"
- },
"type": "magento2-module",
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.4",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/framework": "103.0.*",
+ "magento/module-authorization": "100.4.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-customer": "103.0.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-login-as-customer": "100.4.*",
+ "magento/module-login-as-customer-api": "100.4.*"
+ },
+ "suggest": {
+ "magento/module-login-as-customer-admin-ui": "100.4.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -28,3 +28,4 @@
}
}
}
+
diff --git a/app/code/Magento/LoginAsCustomerFrontendUi/composer.json b/app/code/Magento/LoginAsCustomerFrontendUi/composer.json
index 8a5437dc42d28..79c8fb7e9fe40 100644
--- a/app/code/Magento/LoginAsCustomerFrontendUi/composer.json
+++ b/app/code/Magento/LoginAsCustomerFrontendUi/composer.json
@@ -1,18 +1,18 @@
{
"name": "magento/module-login-as-customer-frontend-ui",
- "description": "",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-login-as-customer-api": "*",
- "magento/module-customer": "*",
- "magento/module-store": "*"
- },
"type": "magento2-module",
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.4",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/framework": "103.0.*",
+ "magento/module-login-as-customer-api": "100.4.*",
+ "magento/module-customer": "103.0.*",
+ "magento/module-store": "101.1.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -22,3 +22,4 @@
}
}
}
+
diff --git a/app/code/Magento/LoginAsCustomerGraphQl/composer.json b/app/code/Magento/LoginAsCustomerGraphQl/composer.json
index 25a5ef8ff8b6c..a9214bdf8ad19 100755
--- a/app/code/Magento/LoginAsCustomerGraphQl/composer.json
+++ b/app/code/Magento/LoginAsCustomerGraphQl/composer.json
@@ -1,23 +1,24 @@
{
"name": "magento/module-login-as-customer-graph-ql",
"description": "Flexible login as a customer so a merchant or merchant admin can log into an end customer's account to assist them with their account.",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-login-as-customer-api": "*",
- "magento/module-login-as-customer-assistance": "*",
- "magento/module-integration": "*",
- "magento/module-store": "*",
- "magento/module-customer": "*"
- },
- "suggest": {
- "magento/module-login-as-customer": "*"
- },
"type": "magento2-module",
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.2",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/framework": "103.0.*",
+ "magento/module-login-as-customer-api": "100.4.*",
+ "magento/module-login-as-customer-assistance": "100.4.*",
+ "magento/module-integration": "100.4.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-customer": "103.0.*"
+ },
+ "suggest": {
+ "magento/module-login-as-customer": "100.4.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -27,3 +28,4 @@
}
}
}
+
diff --git a/app/code/Magento/LoginAsCustomerLog/composer.json b/app/code/Magento/LoginAsCustomerLog/composer.json
index 404511f7315f4..cb798372a4662 100644
--- a/app/code/Magento/LoginAsCustomerLog/composer.json
+++ b/app/code/Magento/LoginAsCustomerLog/composer.json
@@ -1,23 +1,23 @@
{
"name": "magento/module-login-as-customer-log",
- "description": "",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-backend": "*",
- "magento/module-customer": "*",
- "magento/module-login-as-customer-api": "*",
- "magento/module-ui": "*",
- "magento/module-user": "*"
- },
- "suggest": {
- "magento/module-login-as-customer": "*"
- },
"type": "magento2-module",
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.3",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/framework": "103.0.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-customer": "103.0.*",
+ "magento/module-login-as-customer-api": "100.4.*",
+ "magento/module-ui": "101.2.*",
+ "magento/module-user": "101.2.*"
+ },
+ "suggest": {
+ "magento/module-login-as-customer": "100.4.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -27,3 +27,4 @@
}
}
}
+
diff --git a/app/code/Magento/LoginAsCustomerPageCache/composer.json b/app/code/Magento/LoginAsCustomerPageCache/composer.json
index 93f74f29ef246..ab29da4834fff 100644
--- a/app/code/Magento/LoginAsCustomerPageCache/composer.json
+++ b/app/code/Magento/LoginAsCustomerPageCache/composer.json
@@ -1,20 +1,20 @@
{
"name": "magento/module-login-as-customer-page-cache",
- "description": "",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-store": "*",
- "magento/module-login-as-customer-api": "*"
- },
- "suggest": {
- "magento/module-page-cache": "*"
- },
"type": "magento2-module",
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.4",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/framework": "103.0.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-login-as-customer-api": "100.4.*"
+ },
+ "suggest": {
+ "magento/module-page-cache": "100.4.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -24,3 +24,4 @@
}
}
}
+
diff --git a/app/code/Magento/LoginAsCustomerQuote/composer.json b/app/code/Magento/LoginAsCustomerQuote/composer.json
index f852948ab757f..cd20e600e3495 100644
--- a/app/code/Magento/LoginAsCustomerQuote/composer.json
+++ b/app/code/Magento/LoginAsCustomerQuote/composer.json
@@ -1,21 +1,21 @@
{
"name": "magento/module-login-as-customer-quote",
- "description": "",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-checkout": "*",
- "magento/module-customer": "*",
- "magento/module-quote": "*"
- },
- "suggest": {
- "magento/module-login-as-customer-api": "*"
- },
"type": "magento2-module",
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.3",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/framework": "103.0.*",
+ "magento/module-checkout": "100.4.*",
+ "magento/module-customer": "103.0.*",
+ "magento/module-quote": "101.2.*"
+ },
+ "suggest": {
+ "magento/module-login-as-customer-api": "100.4.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -25,3 +25,4 @@
}
}
}
+
diff --git a/app/code/Magento/LoginAsCustomerSales/composer.json b/app/code/Magento/LoginAsCustomerSales/composer.json
index ba24858b6f548..d86e972a4a115 100644
--- a/app/code/Magento/LoginAsCustomerSales/composer.json
+++ b/app/code/Magento/LoginAsCustomerSales/composer.json
@@ -1,21 +1,21 @@
{
"name": "magento/module-login-as-customer-sales",
- "description": "",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-backend": "*",
- "magento/module-user": "*",
- "magento/module-login-as-customer-api": "*"
- },
- "suggest": {
- "magento/module-sales": "*"
- },
"type": "magento2-module",
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.4",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/framework": "103.0.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-user": "101.2.*",
+ "magento/module-login-as-customer-api": "100.4.*"
+ },
+ "suggest": {
+ "magento/module-sales": "103.0.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -25,3 +25,4 @@
}
}
}
+
diff --git a/app/code/Magento/Marketplace/composer.json b/app/code/Magento/Marketplace/composer.json
index f468808298344..532d6872b486a 100644
--- a/app/code/Magento/Marketplace/composer.json
+++ b/app/code/Magento/Marketplace/composer.json
@@ -1,19 +1,20 @@
{
"name": "magento/module-marketplace",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.3",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-backend": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-backend": "102.0.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -23,3 +24,4 @@
}
}
}
+
diff --git a/app/code/Magento/MediaContent/composer.json b/app/code/Magento/MediaContent/composer.json
index 7eb51b02f61eb..e47e10de7e66f 100644
--- a/app/code/Magento/MediaContent/composer.json
+++ b/app/code/Magento/MediaContent/composer.json
@@ -1,17 +1,18 @@
{
"name": "magento/module-media-content",
"description": "Magento module provides the implementation for managing relations between content and media files used in that content",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-media-content-api": "*",
- "magento/module-media-gallery-api": "*"
- },
"type": "magento2-module",
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.3",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/framework": "103.0.*",
+ "magento/module-media-content-api": "100.4.*",
+ "magento/module-media-gallery-api": "101.0.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -21,3 +22,4 @@
}
}
}
+
diff --git a/app/code/Magento/MediaContentApi/composer.json b/app/code/Magento/MediaContentApi/composer.json
index 86dc6408cd6fd..125f58bae4c82 100644
--- a/app/code/Magento/MediaContentApi/composer.json
+++ b/app/code/Magento/MediaContentApi/composer.json
@@ -1,16 +1,17 @@
{
"name": "magento/module-media-content-api",
"description": "Magento module provides the API interfaces for managing relations between content and media files used in that content",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/module-media-gallery-api": "*",
- "magento/framework": "*"
- },
"type": "magento2-module",
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.4",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/module-media-gallery-api": "101.0.*",
+ "magento/framework": "103.0.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -20,3 +21,4 @@
}
}
}
+
diff --git a/app/code/Magento/MediaContentCatalog/composer.json b/app/code/Magento/MediaContentCatalog/composer.json
index 822fd1ec73814..1e22e96975989 100644
--- a/app/code/Magento/MediaContentCatalog/composer.json
+++ b/app/code/Magento/MediaContentCatalog/composer.json
@@ -1,19 +1,20 @@
{
"name": "magento/module-media-content-catalog",
"description": "Magento module provides the implementation of MediaContent functionality for Magento_Catalog module",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/module-media-content-api": "*",
- "magento/module-catalog": "*",
- "magento/module-eav": "*",
- "magento/module-store": "*",
- "magento/framework": "*"
- },
"type": "magento2-module",
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.3",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/module-media-content-api": "100.4.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-eav": "102.1.*",
+ "magento/module-store": "101.1.*",
+ "magento/framework": "103.0.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -23,3 +24,4 @@
}
}
}
+
diff --git a/app/code/Magento/MediaContentCms/composer.json b/app/code/Magento/MediaContentCms/composer.json
index 6cd121d00d2a2..72b3376b3ba84 100644
--- a/app/code/Magento/MediaContentCms/composer.json
+++ b/app/code/Magento/MediaContentCms/composer.json
@@ -1,17 +1,18 @@
{
"name": "magento/module-media-content-cms",
"description": "Magento module provides the implementation of MediaContent functionality for Magento_Cms module",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/module-media-content-api": "*",
- "magento/module-cms": "*",
- "magento/framework": "*"
- },
"type": "magento2-module",
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.3",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/module-media-content-api": "100.4.*",
+ "magento/module-cms": "104.0.*",
+ "magento/framework": "103.0.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -21,3 +22,4 @@
}
}
}
+
diff --git a/app/code/Magento/MediaContentSynchronization/composer.json b/app/code/Magento/MediaContentSynchronization/composer.json
index a3062c163b246..9a9712190f77d 100644
--- a/app/code/Magento/MediaContentSynchronization/composer.json
+++ b/app/code/Magento/MediaContentSynchronization/composer.json
@@ -1,22 +1,23 @@
{
"name": "magento/module-media-content-synchronization",
"description": "Magento module provides implementation of the media content data synchronization.",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/framework-bulk": "*",
- "magento/module-media-content-synchronization-api": "*",
- "magento/module-media-content-api": "*",
- "magento/module-asynchronous-operations": "*"
- },
- "suggest": {
- "magento/module-media-gallery-synchronization": "*"
- },
"type": "magento2-module",
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.4",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/framework": "103.0.*",
+ "magento/framework-bulk": "101.0.*",
+ "magento/module-media-content-synchronization-api": "100.4.*",
+ "magento/module-media-content-api": "100.4.*",
+ "magento/module-asynchronous-operations": "100.4.*"
+ },
+ "suggest": {
+ "magento/module-media-gallery-synchronization": "100.4.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -26,3 +27,4 @@
}
}
}
+
diff --git a/app/code/Magento/MediaContentSynchronizationApi/composer.json b/app/code/Magento/MediaContentSynchronizationApi/composer.json
index 953d665b79a4d..b6bf4dae10c8f 100644
--- a/app/code/Magento/MediaContentSynchronizationApi/composer.json
+++ b/app/code/Magento/MediaContentSynchronizationApi/composer.json
@@ -1,16 +1,17 @@
{
"name": "magento/module-media-content-synchronization-api",
"description": "Magento module responsible for the media content synchronization implementation API",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-media-content-api": "*"
- },
"type": "magento2-module",
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.3",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/framework": "103.0.*",
+ "magento/module-media-content-api": "100.4.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -20,3 +21,4 @@
}
}
}
+
diff --git a/app/code/Magento/MediaContentSynchronizationCatalog/composer.json b/app/code/Magento/MediaContentSynchronizationCatalog/composer.json
index 7a0375e30c370..00b185eea5cfd 100644
--- a/app/code/Magento/MediaContentSynchronizationCatalog/composer.json
+++ b/app/code/Magento/MediaContentSynchronizationCatalog/composer.json
@@ -1,18 +1,19 @@
{
"name": "magento/module-media-content-synchronization-catalog",
"description": "Magento module provides the implementation of MediaContentSynchronization functionality for Magento_Catalog module",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-media-content-synchronization-api": "*",
- "magento/module-media-gallery-synchronization-api": "*",
- "magento/module-media-content-api": "*"
- },
"type": "magento2-module",
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.2",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/framework": "103.0.*",
+ "magento/module-media-content-synchronization-api": "100.4.*",
+ "magento/module-media-gallery-synchronization-api": "100.4.*",
+ "magento/module-media-content-api": "100.4.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -22,3 +23,4 @@
}
}
}
+
diff --git a/app/code/Magento/MediaContentSynchronizationCms/composer.json b/app/code/Magento/MediaContentSynchronizationCms/composer.json
index 9e1236bcb863d..c5f213102070a 100644
--- a/app/code/Magento/MediaContentSynchronizationCms/composer.json
+++ b/app/code/Magento/MediaContentSynchronizationCms/composer.json
@@ -1,18 +1,19 @@
{
"name": "magento/module-media-content-synchronization-cms",
"description": "Magento module provides the implementation of MediaContentSynchronization functionality for Magento_Cms module",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-media-content-synchronization-api": "*",
- "magento/module-media-gallery-synchronization-api": "*",
- "magento/module-media-content-api": "*"
- },
"type": "magento2-module",
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.2",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/framework": "103.0.*",
+ "magento/module-media-content-synchronization-api": "100.4.*",
+ "magento/module-media-gallery-synchronization-api": "100.4.*",
+ "magento/module-media-content-api": "100.4.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -22,3 +23,4 @@
}
}
}
+
diff --git a/app/code/Magento/MediaGallery/composer.json b/app/code/Magento/MediaGallery/composer.json
index ccea65f248c26..a4d764cc9697e 100644
--- a/app/code/Magento/MediaGallery/composer.json
+++ b/app/code/Magento/MediaGallery/composer.json
@@ -1,17 +1,18 @@
{
"name": "magento/module-media-gallery",
"description": "Magento module responsible for media handling",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-media-gallery-api": "*",
- "magento/module-cms": "*"
- },
"type": "magento2-module",
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.4",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/framework": "103.0.*",
+ "magento/module-media-gallery-api": "101.0.*",
+ "magento/module-cms": "104.0.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -21,3 +22,4 @@
}
}
}
+
diff --git a/app/code/Magento/MediaGalleryApi/composer.json b/app/code/Magento/MediaGalleryApi/composer.json
index d4299f8ef5e8d..4589ae750d5c4 100644
--- a/app/code/Magento/MediaGalleryApi/composer.json
+++ b/app/code/Magento/MediaGalleryApi/composer.json
@@ -1,15 +1,16 @@
{
"name": "magento/module-media-gallery-api",
"description": "Magento module responsible for media gallery asset attributes storage and management",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/framework": "*"
- },
"type": "magento2-module",
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "101.0.4",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/framework": "103.0.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -19,3 +20,4 @@
}
}
}
+
diff --git a/app/code/Magento/MediaGalleryCatalog/composer.json b/app/code/Magento/MediaGalleryCatalog/composer.json
index ce438f66fda19..e681c5903b381 100644
--- a/app/code/Magento/MediaGalleryCatalog/composer.json
+++ b/app/code/Magento/MediaGalleryCatalog/composer.json
@@ -1,17 +1,18 @@
{
"name": "magento/module-media-gallery-catalog",
"description": "Magento module responsible for catalog gallery processor delete operation handling",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-media-gallery-api": "*",
- "magento/module-catalog": "*"
- },
"type": "magento2-module",
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.2",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/framework": "103.0.*",
+ "magento/module-media-gallery-api": "101.0.*",
+ "magento/module-catalog": "104.0.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -21,3 +22,4 @@
}
}
}
+
diff --git a/app/code/Magento/MediaGalleryCatalogIntegration/composer.json b/app/code/Magento/MediaGalleryCatalogIntegration/composer.json
index 477312fd0e4fb..d538419f75eb9 100644
--- a/app/code/Magento/MediaGalleryCatalogIntegration/composer.json
+++ b/app/code/Magento/MediaGalleryCatalogIntegration/composer.json
@@ -1,22 +1,23 @@
{
"name": "magento/module-media-gallery-catalog-integration",
"description": "Magento module responsible for extending catalog image uploader functionality",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-cms": "*",
- "magento/module-media-gallery-api": "*",
- "magento/module-media-gallery-synchronization-api": "*",
- "magento/module-media-gallery-ui-api": "*"
- },
- "suggest": {
- "magento/module-catalog": "*"
- },
"type": "magento2-module",
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.2",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/framework": "103.0.*",
+ "magento/module-cms": "104.0.*",
+ "magento/module-media-gallery-api": "101.0.*",
+ "magento/module-media-gallery-synchronization-api": "100.4.*",
+ "magento/module-media-gallery-ui-api": "100.4.*"
+ },
+ "suggest": {
+ "magento/module-catalog": "104.0.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -26,3 +27,4 @@
}
}
}
+
diff --git a/app/code/Magento/MediaGalleryCatalogUi/composer.json b/app/code/Magento/MediaGalleryCatalogUi/composer.json
index 296de50df5189..274c1d75d41d4 100644
--- a/app/code/Magento/MediaGalleryCatalogUi/composer.json
+++ b/app/code/Magento/MediaGalleryCatalogUi/composer.json
@@ -1,20 +1,21 @@
{
"name": "magento/module-media-gallery-catalog-ui",
"description": "Magento module that implement category grid for media gallery.",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-cms": "*",
- "magento/module-backend": "*",
- "magento/module-catalog": "*",
- "magento/module-store": "*",
- "magento/module-ui": "*"
- },
"type": "magento2-module",
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.2",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/framework": "103.0.*",
+ "magento/module-cms": "104.0.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-ui": "101.2.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -24,3 +25,4 @@
}
}
}
+
diff --git a/app/code/Magento/MediaGalleryCmsUi/composer.json b/app/code/Magento/MediaGalleryCmsUi/composer.json
index 01e65b4212322..c0cfa93ed7ca7 100644
--- a/app/code/Magento/MediaGalleryCmsUi/composer.json
+++ b/app/code/Magento/MediaGalleryCmsUi/composer.json
@@ -1,17 +1,18 @@
{
"name": "magento/module-media-gallery-cms-ui",
"description": "Cms related UI elements in the magento media gallery",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-cms": "*",
- "magento/module-backend": "*"
- },
"type": "magento2-module",
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.2",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/framework": "103.0.*",
+ "magento/module-cms": "104.0.*",
+ "magento/module-backend": "102.0.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -21,3 +22,4 @@
}
}
}
+
diff --git a/app/code/Magento/MediaGalleryIntegration/composer.json b/app/code/Magento/MediaGalleryIntegration/composer.json
index a29b109174369..ba07883b9722d 100644
--- a/app/code/Magento/MediaGalleryIntegration/composer.json
+++ b/app/code/Magento/MediaGalleryIntegration/composer.json
@@ -1,26 +1,24 @@
{
"name": "magento/module-media-gallery-integration",
"description": "Magento module responsible for integration of enhanced media gallery",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-media-gallery-ui-api": "*",
- "magento/module-media-gallery-api": "*",
- "magento/module-media-gallery-synchronization-api": "*",
- "magento/module-ui": "*"
- },
- "require-dev": {
- "magento/module-cms": "*"
- },
- "suggest": {
- "magento/module-catalog": "*",
- "magento/module-cms": "*"
- },
"type": "magento2-module",
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.4",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/framework": "103.0.*",
+ "magento/module-media-gallery-ui-api": "100.4.*",
+ "magento/module-media-gallery-api": "101.0.*",
+ "magento/module-media-gallery-synchronization-api": "100.4.*",
+ "magento/module-ui": "101.2.*"
+ },
+ "suggest": {
+ "magento/module-catalog": "104.0.*",
+ "magento/module-cms": "104.0.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -28,5 +26,9 @@
"psr-4": {
"Magento\\MediaGalleryIntegration\\": ""
}
+ },
+ "require-dev": {
+ "magento/module-cms": "*"
}
}
+
diff --git a/app/code/Magento/MediaGalleryMetadata/composer.json b/app/code/Magento/MediaGalleryMetadata/composer.json
index 88a54ffadab49..85ecdf94814ff 100644
--- a/app/code/Magento/MediaGalleryMetadata/composer.json
+++ b/app/code/Magento/MediaGalleryMetadata/composer.json
@@ -1,16 +1,17 @@
{
"name": "magento/module-media-gallery-metadata",
"description": "Magento module responsible for images metadata processing",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-media-gallery-metadata-api": "*"
- },
"type": "magento2-module",
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.3",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/framework": "103.0.*",
+ "magento/module-media-gallery-metadata-api": "100.4.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -20,3 +21,4 @@
}
}
}
+
diff --git a/app/code/Magento/MediaGalleryMetadataApi/composer.json b/app/code/Magento/MediaGalleryMetadataApi/composer.json
index ea8ec2763678b..7bb9be743cba1 100644
--- a/app/code/Magento/MediaGalleryMetadataApi/composer.json
+++ b/app/code/Magento/MediaGalleryMetadataApi/composer.json
@@ -1,15 +1,16 @@
{
"name": "magento/module-media-gallery-metadata-api",
"description": "Magento module responsible for media gallery metadata implementation API",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/framework": "*"
- },
"type": "magento2-module",
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.2",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/framework": "103.0.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -19,3 +20,4 @@
}
}
}
+
diff --git a/app/code/Magento/MediaGalleryRenditions/composer.json b/app/code/Magento/MediaGalleryRenditions/composer.json
index e18f3ae6e78c3..88128b9b3ccaf 100644
--- a/app/code/Magento/MediaGalleryRenditions/composer.json
+++ b/app/code/Magento/MediaGalleryRenditions/composer.json
@@ -1,22 +1,23 @@
{
"name": "magento/module-media-gallery-renditions",
"description": "Magento module that implements height and width fields for for media gallery items.",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-media-gallery-renditions-api": "*",
- "magento/module-media-gallery-api": "*",
- "magento/framework-message-queue": "*",
- "magento/module-cms": "*"
- },
- "suggest": {
- "magento/module-media-content-api": "*"
- },
"type": "magento2-module",
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.3",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/framework": "103.0.*",
+ "magento/module-media-gallery-renditions-api": "100.4.*",
+ "magento/module-media-gallery-api": "101.0.*",
+ "magento/framework-message-queue": "100.4.*",
+ "magento/module-cms": "104.0.*"
+ },
+ "suggest": {
+ "magento/module-media-content-api": "100.4.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -26,3 +27,4 @@
}
}
}
+
diff --git a/app/code/Magento/MediaGalleryRenditionsApi/composer.json b/app/code/Magento/MediaGalleryRenditionsApi/composer.json
index 589247e91f269..9e9f2f8f8408f 100644
--- a/app/code/Magento/MediaGalleryRenditionsApi/composer.json
+++ b/app/code/Magento/MediaGalleryRenditionsApi/composer.json
@@ -1,15 +1,16 @@
{
"name": "magento/module-media-gallery-renditions-api",
"description": "Magento module that is responsible for the API implementation of Media Gallery Renditions.",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/framework": "*"
- },
"type": "magento2-module",
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.2",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/framework": "103.0.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -19,3 +20,4 @@
}
}
}
+
diff --git a/app/code/Magento/MediaGallerySynchronization/composer.json b/app/code/Magento/MediaGallerySynchronization/composer.json
index 0a7b05a9f4fca..a7c1abeedeba3 100644
--- a/app/code/Magento/MediaGallerySynchronization/composer.json
+++ b/app/code/Magento/MediaGallerySynchronization/composer.json
@@ -1,18 +1,19 @@
{
"name": "magento/module-media-gallery-synchronization",
"description": "Magento module provides implementation of the media gallery data synchronization.",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-media-gallery-api": "*",
- "magento/module-media-gallery-synchronization-api": "*",
- "magento/framework-message-queue": "*"
- },
"type": "magento2-module",
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.4",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/framework": "103.0.*",
+ "magento/module-media-gallery-api": "101.0.*",
+ "magento/module-media-gallery-synchronization-api": "100.4.*",
+ "magento/framework-message-queue": "100.4.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -22,3 +23,4 @@
}
}
}
+
diff --git a/app/code/Magento/MediaGallerySynchronizationApi/composer.json b/app/code/Magento/MediaGallerySynchronizationApi/composer.json
index e7b388d7f407d..39e1851e9155b 100644
--- a/app/code/Magento/MediaGallerySynchronizationApi/composer.json
+++ b/app/code/Magento/MediaGallerySynchronizationApi/composer.json
@@ -1,16 +1,17 @@
{
"name": "magento/module-media-gallery-synchronization-api",
"description": "Magento module responsible for the media gallery synchronization implementation API",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-media-gallery-api": "*"
- },
"type": "magento2-module",
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.3",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/framework": "103.0.*",
+ "magento/module-media-gallery-api": "101.0.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -20,3 +21,4 @@
}
}
}
+
diff --git a/app/code/Magento/MediaGallerySynchronizationMetadata/composer.json b/app/code/Magento/MediaGallerySynchronizationMetadata/composer.json
index 38088910e6a78..df46bf6b541ef 100644
--- a/app/code/Magento/MediaGallerySynchronizationMetadata/composer.json
+++ b/app/code/Magento/MediaGallerySynchronizationMetadata/composer.json
@@ -1,18 +1,19 @@
{
"name": "magento/module-media-gallery-synchronization-metadata",
"description": "Magento module responsible for images metadata synchronization",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-media-gallery-api": "*",
- "magento/module-media-gallery-metadata-api": "*",
- "magento/module-media-gallery-synchronization-api": "*"
- },
"type": "magento2-module",
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.1",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/framework": "103.0.*",
+ "magento/module-media-gallery-api": "101.0.*",
+ "magento/module-media-gallery-metadata-api": "100.4.*",
+ "magento/module-media-gallery-synchronization-api": "100.4.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -22,3 +23,4 @@
}
}
}
+
diff --git a/app/code/Magento/MediaGalleryUi/composer.json b/app/code/Magento/MediaGalleryUi/composer.json
index c95c16cfc8ad2..55749c092a95d 100644
--- a/app/code/Magento/MediaGalleryUi/composer.json
+++ b/app/code/Magento/MediaGalleryUi/composer.json
@@ -1,26 +1,27 @@
{
"name": "magento/module-media-gallery-ui",
"description": "Magento module responsible for the media gallery UI implementation",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-backend": "*",
- "magento/module-ui": "*",
- "magento/module-store": "*",
- "magento/module-media-gallery-ui-api": "*",
- "magento/module-media-gallery-api": "*",
- "magento/module-media-gallery-metadata-api": "*",
- "magento/module-media-gallery-synchronization-api": "*",
- "magento/module-media-content-api": "*",
- "magento/module-cms": "*",
- "magento/module-directory": "*",
- "magento/module-authorization": "*"
- },
"type": "magento2-module",
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.4",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/framework": "103.0.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-ui": "101.2.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-media-gallery-ui-api": "100.4.*",
+ "magento/module-media-gallery-api": "101.0.*",
+ "magento/module-media-gallery-metadata-api": "100.4.*",
+ "magento/module-media-gallery-synchronization-api": "100.4.*",
+ "magento/module-media-content-api": "100.4.*",
+ "magento/module-cms": "104.0.*",
+ "magento/module-directory": "100.4.*",
+ "magento/module-authorization": "100.4.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -30,3 +31,4 @@
}
}
}
+
diff --git a/app/code/Magento/MediaGalleryUiApi/composer.json b/app/code/Magento/MediaGalleryUiApi/composer.json
index b1078e8e3a4f7..7f483fadd6040 100644
--- a/app/code/Magento/MediaGalleryUiApi/composer.json
+++ b/app/code/Magento/MediaGalleryUiApi/composer.json
@@ -1,18 +1,19 @@
{
"name": "magento/module-media-gallery-ui-api",
"description": "Magento module responsible for the media gallery UI implementation API",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/framework": "*"
- },
- "suggest": {
- "magento/module-cms": "*"
- },
"type": "magento2-module",
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.3",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/framework": "103.0.*"
+ },
+ "suggest": {
+ "magento/module-cms": "104.0.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -22,3 +23,4 @@
}
}
}
+
diff --git a/app/code/Magento/MediaStorage/composer.json b/app/code/Magento/MediaStorage/composer.json
index 1654e1645e7ba..0647a13fdf62e 100644
--- a/app/code/Magento/MediaStorage/composer.json
+++ b/app/code/Magento/MediaStorage/composer.json
@@ -1,26 +1,27 @@
{
"name": "magento/module-media-storage",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.4",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/framework-bulk": "*",
- "magento/module-backend": "*",
- "magento/module-config": "*",
- "magento/module-store": "*",
- "magento/module-catalog": "*",
- "magento/module-theme": "*",
- "magento/module-asynchronous-operations": "*",
- "magento/module-authorization": "*"
+ "magento/framework": "103.0.*",
+ "magento/framework-bulk": "101.0.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-config": "101.2.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-theme": "101.1.*",
+ "magento/module-asynchronous-operations": "100.4.*",
+ "magento/module-authorization": "100.4.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -30,3 +31,4 @@
}
}
}
+
diff --git a/app/code/Magento/MessageQueue/composer.json b/app/code/Magento/MessageQueue/composer.json
index 2038e14ad32ed..39040100a7c4c 100644
--- a/app/code/Magento/MessageQueue/composer.json
+++ b/app/code/Magento/MessageQueue/composer.json
@@ -1,20 +1,21 @@
{
"name": "magento/module-message-queue",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.5",
"require": {
- "magento/framework": "*",
- "magento/framework-message-queue": "*",
+ "magento/framework": "103.0.*",
+ "magento/framework-message-queue": "100.4.*",
"magento/magento-composer-installer": "*",
"php": "~7.4.0||~8.1.0"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -24,3 +25,4 @@
}
}
}
+
diff --git a/app/code/Magento/Msrp/composer.json b/app/code/Magento/Msrp/composer.json
index 926b35621be3d..c8f375da51fd2 100644
--- a/app/code/Magento/Msrp/composer.json
+++ b/app/code/Magento/Msrp/composer.json
@@ -1,27 +1,28 @@
{
"name": "magento/module-msrp",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.4",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-catalog": "*",
- "magento/module-downloadable": "*",
- "magento/module-eav": "*",
- "magento/module-store": "*",
- "magento/module-tax": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-downloadable": "100.4.*",
+ "magento/module-eav": "102.1.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-tax": "100.4.*"
},
"suggest": {
- "magento/module-bundle": "*",
- "magento/module-msrp-sample-data": "*"
+ "magento/module-bundle": "101.0.*",
+ "magento/module-msrp-sample-data": "Sample Data version: 100.4.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -31,3 +32,4 @@
}
}
}
+
diff --git a/app/code/Magento/MsrpConfigurableProduct/composer.json b/app/code/Magento/MsrpConfigurableProduct/composer.json
index 067a89c0be42a..08b8189548fa2 100644
--- a/app/code/Magento/MsrpConfigurableProduct/composer.json
+++ b/app/code/Magento/MsrpConfigurableProduct/composer.json
@@ -1,21 +1,22 @@
{
"name": "magento/module-msrp-configurable-product",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.2",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-catalog": "*",
- "magento/module-msrp": "*",
- "magento/module-configurable-product": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-msrp": "100.4.*",
+ "magento/module-configurable-product": "100.4.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -25,3 +26,4 @@
}
}
}
+
diff --git a/app/code/Magento/MsrpGroupedProduct/composer.json b/app/code/Magento/MsrpGroupedProduct/composer.json
index 0ea4a60098282..0459ed15e5842 100644
--- a/app/code/Magento/MsrpGroupedProduct/composer.json
+++ b/app/code/Magento/MsrpGroupedProduct/composer.json
@@ -1,21 +1,22 @@
{
"name": "magento/module-msrp-grouped-product",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.2",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-catalog": "*",
- "magento/module-msrp": "*",
- "magento/module-grouped-product": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-msrp": "100.4.*",
+ "magento/module-grouped-product": "100.4.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -25,3 +26,4 @@
}
}
}
+
diff --git a/app/code/Magento/Multishipping/composer.json b/app/code/Magento/Multishipping/composer.json
index e796d7fd01b11..06e5850aabc45 100644
--- a/app/code/Magento/Multishipping/composer.json
+++ b/app/code/Magento/Multishipping/composer.json
@@ -1,28 +1,29 @@
{
"name": "magento/module-multishipping",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-checkout": "*",
- "magento/module-customer": "*",
- "magento/module-directory": "*",
- "magento/module-payment": "*",
- "magento/module-quote": "*",
- "magento/module-sales": "*",
- "magento/module-store": "*",
- "magento/module-tax": "*",
- "magento/module-theme": "*",
- "magento/module-captcha": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-checkout": "100.4.*",
+ "magento/module-customer": "103.0.*",
+ "magento/module-directory": "100.4.*",
+ "magento/module-payment": "100.4.*",
+ "magento/module-quote": "101.2.*",
+ "magento/module-sales": "103.0.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-tax": "100.4.*",
+ "magento/module-theme": "101.1.*",
+ "magento/module-captcha": "100.4.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -32,3 +33,4 @@
}
}
}
+
diff --git a/app/code/Magento/MysqlMq/composer.json b/app/code/Magento/MysqlMq/composer.json
index 8b62c6daf183c..3ddcef61c7ba0 100644
--- a/app/code/Magento/MysqlMq/composer.json
+++ b/app/code/Magento/MysqlMq/composer.json
@@ -1,21 +1,22 @@
{
"name": "magento/module-mysql-mq",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.3",
"require": {
- "magento/framework": "*",
- "magento/framework-message-queue": "*",
+ "magento/framework": "103.0.*",
+ "magento/framework-message-queue": "100.4.*",
"magento/magento-composer-installer": "*",
- "magento/module-store": "*",
+ "magento/module-store": "101.1.*",
"php": "~7.4.0||~8.1.0"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -25,3 +26,4 @@
}
}
}
+
diff --git a/app/code/Magento/NewRelicReporting/composer.json b/app/code/Magento/NewRelicReporting/composer.json
index b566a7117dc48..50514928a9cac 100644
--- a/app/code/Magento/NewRelicReporting/composer.json
+++ b/app/code/Magento/NewRelicReporting/composer.json
@@ -1,25 +1,26 @@
{
"name": "magento/module-new-relic-reporting",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.3",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
+ "magento/framework": "103.0.*",
"magento/magento-composer-installer": "*",
- "magento/module-backend": "*",
- "magento/module-catalog": "*",
- "magento/module-config": "*",
- "magento/module-configurable-product": "*",
- "magento/module-customer": "*",
- "magento/module-store": "*"
+ "magento/module-backend": "102.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-config": "101.2.*",
+ "magento/module-configurable-product": "100.4.*",
+ "magento/module-customer": "103.0.*",
+ "magento/module-store": "101.1.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -29,3 +30,4 @@
}
}
}
+
diff --git a/app/code/Magento/Newsletter/composer.json b/app/code/Magento/Newsletter/composer.json
index 9c3e3627e4cea..e9e865a60c370 100644
--- a/app/code/Magento/Newsletter/composer.json
+++ b/app/code/Magento/Newsletter/composer.json
@@ -1,27 +1,28 @@
{
"name": "magento/module-newsletter",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-backend": "*",
- "magento/module-cms": "*",
- "magento/module-customer": "*",
- "magento/module-eav": "*",
- "magento/module-email": "*",
- "magento/module-require-js": "*",
- "magento/module-store": "*",
- "magento/module-widget": "*",
- "magento/module-ui": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-cms": "104.0.*",
+ "magento/module-customer": "103.0.*",
+ "magento/module-eav": "102.1.*",
+ "magento/module-email": "101.1.*",
+ "magento/module-require-js": "100.4.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-widget": "101.2.*",
+ "magento/module-ui": "101.2.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -31,3 +32,4 @@
}
}
}
+
diff --git a/app/code/Magento/NewsletterGraphQl/composer.json b/app/code/Magento/NewsletterGraphQl/composer.json
index 03fa7650257fb..2deffb6b9275f 100644
--- a/app/code/Magento/NewsletterGraphQl/composer.json
+++ b/app/code/Magento/NewsletterGraphQl/composer.json
@@ -1,24 +1,25 @@
{
"name": "magento/module-newsletter-graph-ql",
"description": "Provides GraphQl functionality for the newsletter subscriptions.",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
- "type": "magento2-module",
+ "version": "100.4.2",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-customer": "*",
- "magento/module-newsletter": "*",
- "magento/module-store": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-customer": "103.0.*",
+ "magento/module-newsletter": "100.4.*",
+ "magento/module-store": "101.1.*"
},
"suggest": {
- "magento/module-graph-ql": "*"
+ "magento/module-graph-ql": "100.4.*"
},
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -28,3 +29,4 @@
}
}
}
+
diff --git a/app/code/Magento/OfflinePayments/composer.json b/app/code/Magento/OfflinePayments/composer.json
index cdd383aee71e5..74f2c5183fdac 100644
--- a/app/code/Magento/OfflinePayments/composer.json
+++ b/app/code/Magento/OfflinePayments/composer.json
@@ -1,24 +1,25 @@
{
"name": "magento/module-offline-payments",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.3",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-checkout": "*",
- "magento/module-payment": "*",
- "magento/module-quote": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-checkout": "100.4.*",
+ "magento/module-payment": "100.4.*",
+ "magento/module-quote": "101.2.*"
},
"suggest": {
- "magento/module-config": "*"
+ "magento/module-config": "101.2.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -28,3 +29,4 @@
}
}
}
+
diff --git a/app/code/Magento/OfflineShipping/composer.json b/app/code/Magento/OfflineShipping/composer.json
index e58f678e47770..9960906313e99 100644
--- a/app/code/Magento/OfflineShipping/composer.json
+++ b/app/code/Magento/OfflineShipping/composer.json
@@ -1,31 +1,32 @@
{
"name": "magento/module-offline-shipping",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.4",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-backend": "*",
- "magento/module-catalog": "*",
- "magento/module-config": "*",
- "magento/module-directory": "*",
- "magento/module-quote": "*",
- "magento/module-sales": "*",
- "magento/module-sales-rule": "*",
- "magento/module-shipping": "*",
- "magento/module-store": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-config": "101.2.*",
+ "magento/module-directory": "100.4.*",
+ "magento/module-quote": "101.2.*",
+ "magento/module-sales": "103.0.*",
+ "magento/module-sales-rule": "101.2.*",
+ "magento/module-shipping": "100.4.*",
+ "magento/module-store": "101.1.*"
},
"suggest": {
- "magento/module-checkout": "*",
- "magento/module-offline-shipping-sample-data": "*"
+ "magento/module-checkout": "100.4.*",
+ "magento/module-offline-shipping-sample-data": "Sample Data version: 100.4.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -35,3 +36,4 @@
}
}
}
+
diff --git a/app/code/Magento/PageCache/composer.json b/app/code/Magento/PageCache/composer.json
index eef0e5edd3824..b56923d3d7a0c 100644
--- a/app/code/Magento/PageCache/composer.json
+++ b/app/code/Magento/PageCache/composer.json
@@ -1,22 +1,23 @@
{
"name": "magento/module-page-cache",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-backend": "*",
- "magento/module-config": "*",
- "magento/module-store": "*",
- "magento/module-catalog": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-config": "101.2.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-catalog": "104.0.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -26,3 +27,4 @@
}
}
}
+
diff --git a/app/code/Magento/Payment/composer.json b/app/code/Magento/Payment/composer.json
index 8caad77d9b36b..30ee1d51ed63e 100644
--- a/app/code/Magento/Payment/composer.json
+++ b/app/code/Magento/Payment/composer.json
@@ -1,25 +1,26 @@
{
"name": "magento/module-payment",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-checkout": "*",
- "magento/module-config": "*",
- "magento/module-directory": "*",
- "magento/module-quote": "*",
- "magento/module-sales": "*",
- "magento/module-store": "*",
- "magento/module-ui": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-checkout": "100.4.*",
+ "magento/module-config": "101.2.*",
+ "magento/module-directory": "100.4.*",
+ "magento/module-quote": "101.2.*",
+ "magento/module-sales": "103.0.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-ui": "101.2.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -29,3 +30,4 @@
}
}
}
+
diff --git a/app/code/Magento/PaymentGraphQl/composer.json b/app/code/Magento/PaymentGraphQl/composer.json
index 8332d7dee0a4a..fc1d50dceb9f2 100644
--- a/app/code/Magento/PaymentGraphQl/composer.json
+++ b/app/code/Magento/PaymentGraphQl/composer.json
@@ -2,19 +2,20 @@
"name": "magento/module-payment-graph-ql",
"description": "N/A",
"type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
+ "version": "100.4.0",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-payment": "*",
- "magento/module-graph-ql": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-payment": "100.4.*",
+ "magento/module-graph-ql": "100.4.*"
},
"suggest": {
- "magento/module-store-graph-ql": "*"
+ "magento/module-store-graph-ql": "100.4.*"
},
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -24,3 +25,4 @@
}
}
}
+
diff --git a/app/code/Magento/Paypal/composer.json b/app/code/Magento/Paypal/composer.json
index b157a63fefeb2..c86532581f869 100644
--- a/app/code/Magento/Paypal/composer.json
+++ b/app/code/Magento/Paypal/composer.json
@@ -1,39 +1,40 @@
{
"name": "magento/module-paypal",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "101.0.5",
"require": {
"php": "~7.4.0||~8.1.0",
"lib-libxml": "*",
- "magento/framework": "*",
- "magento/module-authorization": "*",
- "magento/module-backend": "*",
- "magento/module-catalog": "*",
- "magento/module-checkout": "*",
- "magento/module-config": "*",
- "magento/module-customer": "*",
- "magento/module-directory": "*",
- "magento/module-eav": "*",
- "magento/module-instant-purchase": "*",
- "magento/module-payment": "*",
- "magento/module-quote": "*",
- "magento/module-sales": "*",
- "magento/module-store": "*",
- "magento/module-tax": "*",
- "magento/module-theme": "*",
- "magento/module-ui": "*",
- "magento/module-vault": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-authorization": "100.4.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-checkout": "100.4.*",
+ "magento/module-config": "101.2.*",
+ "magento/module-customer": "103.0.*",
+ "magento/module-directory": "100.4.*",
+ "magento/module-eav": "102.1.*",
+ "magento/module-instant-purchase": "100.4.*",
+ "magento/module-payment": "100.4.*",
+ "magento/module-quote": "101.2.*",
+ "magento/module-sales": "103.0.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-tax": "100.4.*",
+ "magento/module-theme": "101.1.*",
+ "magento/module-ui": "101.2.*",
+ "magento/module-vault": "101.2.*"
},
"suggest": {
- "magento/module-checkout-agreements": "*"
+ "magento/module-checkout-agreements": "100.4.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -43,3 +44,4 @@
}
}
}
+
diff --git a/app/code/Magento/PaypalCaptcha/composer.json b/app/code/Magento/PaypalCaptcha/composer.json
index 3f1f5bad59c3b..c45d080001343 100644
--- a/app/code/Magento/PaypalCaptcha/composer.json
+++ b/app/code/Magento/PaypalCaptcha/composer.json
@@ -1,24 +1,25 @@
{
"name": "magento/module-paypal-captcha",
"description": "Provides CAPTCHA validation for PayPal Payflow Pro",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.2",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-captcha": "*",
- "magento/module-checkout": "*",
- "magento/module-store": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-captcha": "100.4.*",
+ "magento/module-checkout": "100.4.*",
+ "magento/module-store": "101.1.*"
},
"suggest": {
- "magento/module-paypal": "*"
+ "magento/module-paypal": "101.0.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -28,3 +29,4 @@
}
}
}
+
diff --git a/app/code/Magento/PaypalGraphQl/composer.json b/app/code/Magento/PaypalGraphQl/composer.json
index ea8a43c64257d..11a3bbc6c39a2 100644
--- a/app/code/Magento/PaypalGraphQl/composer.json
+++ b/app/code/Magento/PaypalGraphQl/composer.json
@@ -1,30 +1,31 @@
{
"name": "magento/module-paypal-graph-ql",
"description": "GraphQl support for Paypal",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.3",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-quote": "*",
- "magento/module-checkout": "*",
- "magento/module-paypal": "*",
- "magento/module-quote-graph-ql": "*",
- "magento/module-sales": "*",
- "magento/module-payment": "*",
- "magento/module-store": "*",
- "magento/module-vault": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-quote": "101.2.*",
+ "magento/module-checkout": "100.4.*",
+ "magento/module-paypal": "101.0.*",
+ "magento/module-quote-graph-ql": "100.4.*",
+ "magento/module-sales": "103.0.*",
+ "magento/module-payment": "100.4.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-vault": "101.2.*"
},
"suggest": {
- "magento/module-graph-ql": "*",
- "magento/module-store-graph-ql": "*"
+ "magento/module-graph-ql": "100.4.*",
+ "magento/module-store-graph-ql": "100.4.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -34,3 +35,4 @@
}
}
}
+
diff --git a/app/code/Magento/Persistent/composer.json b/app/code/Magento/Persistent/composer.json
index 3e4b24c38b92b..b2965378d3b1e 100644
--- a/app/code/Magento/Persistent/composer.json
+++ b/app/code/Magento/Persistent/composer.json
@@ -1,24 +1,25 @@
{
"name": "magento/module-persistent",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-checkout": "*",
- "magento/module-cron": "*",
- "magento/module-customer": "*",
- "magento/module-page-cache": "*",
- "magento/module-quote": "*",
- "magento/module-store": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-checkout": "100.4.*",
+ "magento/module-cron": "100.4.*",
+ "magento/module-customer": "103.0.*",
+ "magento/module-page-cache": "100.4.*",
+ "magento/module-quote": "101.2.*",
+ "magento/module-store": "101.1.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -28,3 +29,4 @@
}
}
}
+
diff --git a/app/code/Magento/ProductAlert/composer.json b/app/code/Magento/ProductAlert/composer.json
index 8533a0e37443e..60471458186a3 100644
--- a/app/code/Magento/ProductAlert/composer.json
+++ b/app/code/Magento/ProductAlert/composer.json
@@ -1,29 +1,30 @@
{
"name": "magento/module-product-alert",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.4",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/framework-bulk": "*",
- "magento/module-asynchronous-operations": "*",
- "magento/module-authorization": "*",
- "magento/module-backend": "*",
- "magento/module-catalog": "*",
- "magento/module-customer": "*",
- "magento/module-store": "*",
- "magento/module-theme": "*"
+ "magento/framework": "103.0.*",
+ "magento/framework-bulk": "101.0.*",
+ "magento/module-asynchronous-operations": "100.4.*",
+ "magento/module-authorization": "100.4.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-customer": "103.0.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-theme": "101.1.*"
},
"suggest": {
- "magento/module-config": "*"
+ "magento/module-config": "101.2.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -33,3 +34,4 @@
}
}
}
+
diff --git a/app/code/Magento/ProductVideo/composer.json b/app/code/Magento/ProductVideo/composer.json
index b6c7a51914295..78d378c1f193c 100644
--- a/app/code/Magento/ProductVideo/composer.json
+++ b/app/code/Magento/ProductVideo/composer.json
@@ -1,29 +1,30 @@
{
"name": "magento/module-product-video",
"description": "Add Video to Products",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
+ "magento/framework": "103.0.*",
"magento/magento-composer-installer": "*",
- "magento/module-backend": "*",
- "magento/module-catalog": "*",
- "magento/module-eav": "*",
- "magento/module-media-storage": "*",
- "magento/module-store": "*"
+ "magento/module-backend": "102.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-eav": "102.1.*",
+ "magento/module-media-storage": "100.4.*",
+ "magento/module-store": "101.1.*"
},
"suggest": {
- "magento/module-customer": "*",
- "magento/module-config": "*",
- "magento/module-theme": "*"
+ "magento/module-customer": "103.0.*",
+ "magento/module-config": "101.2.*",
+ "magento/module-theme": "101.1.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -33,3 +34,4 @@
}
}
}
+
diff --git a/app/code/Magento/Quote/composer.json b/app/code/Magento/Quote/composer.json
index 922f3d36fa918..03eb9f8638df6 100644
--- a/app/code/Magento/Quote/composer.json
+++ b/app/code/Magento/Quote/composer.json
@@ -1,35 +1,36 @@
{
"name": "magento/module-quote",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "101.2.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-authorization": "*",
- "magento/module-backend": "*",
- "magento/module-catalog": "*",
- "magento/module-catalog-inventory": "*",
- "magento/module-checkout": "*",
- "magento/module-customer": "*",
- "magento/module-directory": "*",
- "magento/module-eav": "*",
- "magento/module-payment": "*",
- "magento/module-sales": "*",
- "magento/module-sales-sequence": "*",
- "magento/module-shipping": "*",
- "magento/module-store": "*",
- "magento/module-tax": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-authorization": "100.4.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-catalog-inventory": "100.4.*",
+ "magento/module-checkout": "100.4.*",
+ "magento/module-customer": "103.0.*",
+ "magento/module-directory": "100.4.*",
+ "magento/module-eav": "102.1.*",
+ "magento/module-payment": "100.4.*",
+ "magento/module-sales": "103.0.*",
+ "magento/module-sales-sequence": "100.4.*",
+ "magento/module-shipping": "100.4.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-tax": "100.4.*"
},
"suggest": {
- "magento/module-webapi": "*"
+ "magento/module-webapi": "100.4.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -39,3 +40,4 @@
}
}
}
+
diff --git a/app/code/Magento/QuoteAnalytics/composer.json b/app/code/Magento/QuoteAnalytics/composer.json
index 038553b4d487e..e8803403c6bcb 100644
--- a/app/code/Magento/QuoteAnalytics/composer.json
+++ b/app/code/Magento/QuoteAnalytics/composer.json
@@ -1,17 +1,18 @@
{
"name": "magento/module-quote-analytics",
"description": "N/A",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-quote": "*",
- "magento/module-analytics": "*"
- },
"type": "magento2-module",
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.4",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/framework": "103.0.*",
+ "magento/module-quote": "101.2.*",
+ "magento/module-analytics": "100.4.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -21,3 +22,4 @@
}
}
}
+
diff --git a/app/code/Magento/QuoteBundleOptions/composer.json b/app/code/Magento/QuoteBundleOptions/composer.json
index 79ad425b2d359..8709dc6815c56 100644
--- a/app/code/Magento/QuoteBundleOptions/composer.json
+++ b/app/code/Magento/QuoteBundleOptions/composer.json
@@ -1,16 +1,17 @@
{
"name": "magento/module-quote-bundle-options",
"description": "Magento module provides data provider for creating buy request for bundle products",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-quote": "*"
- },
"type": "magento2-module",
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.1",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/framework": "103.0.*",
+ "magento/module-quote": "101.2.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -20,3 +21,4 @@
}
}
}
+
diff --git a/app/code/Magento/QuoteConfigurableOptions/composer.json b/app/code/Magento/QuoteConfigurableOptions/composer.json
index 2da064db42965..140142767f03b 100644
--- a/app/code/Magento/QuoteConfigurableOptions/composer.json
+++ b/app/code/Magento/QuoteConfigurableOptions/composer.json
@@ -1,16 +1,17 @@
{
"name": "magento/module-quote-configurable-options",
"description": "Magento module provides data provider for creating buy request for configurable products",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-quote": "*"
- },
"type": "magento2-module",
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.1",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/framework": "103.0.*",
+ "magento/module-quote": "101.2.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -20,3 +21,4 @@
}
}
}
+
diff --git a/app/code/Magento/QuoteDownloadableLinks/composer.json b/app/code/Magento/QuoteDownloadableLinks/composer.json
index 2b4dcc3331b8e..d1f9ce29b81f0 100644
--- a/app/code/Magento/QuoteDownloadableLinks/composer.json
+++ b/app/code/Magento/QuoteDownloadableLinks/composer.json
@@ -1,16 +1,17 @@
{
"name": "magento/module-quote-downloadable-links",
"description": "Magento module provides data provider for creating buy request for links of downloadable products",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-quote": "*"
- },
"type": "magento2-module",
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.1",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/framework": "103.0.*",
+ "magento/module-quote": "101.2.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -20,3 +21,4 @@
}
}
}
+
diff --git a/app/code/Magento/QuoteGraphQl/composer.json b/app/code/Magento/QuoteGraphQl/composer.json
index 4f885fa33a7b0..63a54bdaafec8 100644
--- a/app/code/Magento/QuoteGraphQl/composer.json
+++ b/app/code/Magento/QuoteGraphQl/composer.json
@@ -2,30 +2,31 @@
"name": "magento/module-quote-graph-ql",
"description": "N/A",
"type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
+ "version": "100.4.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-quote": "*",
- "magento/module-checkout": "*",
- "magento/module-catalog": "*",
- "magento/module-store": "*",
- "magento/module-customer": "*",
- "magento/module-customer-graph-ql": "*",
- "magento/module-sales": "*",
- "magento/module-directory": "*",
- "magento/module-graph-ql": "*",
- "magento/module-gift-message": "*",
- "magento/module-catalog-inventory": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-quote": "101.2.*",
+ "magento/module-checkout": "100.4.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-customer": "103.0.*",
+ "magento/module-customer-graph-ql": "100.4.*",
+ "magento/module-sales": "103.0.*",
+ "magento/module-directory": "100.4.*",
+ "magento/module-graph-ql": "100.4.*",
+ "magento/module-gift-message": "100.4.*",
+ "magento/module-catalog-inventory": "100.4.*"
},
"suggest": {
- "magento/module-graph-ql-cache": "*",
- "magento/module-catalog-inventory-graph-ql": "*",
- "magento/module-payment-graph-ql": "*"
+ "magento/module-graph-ql-cache": "100.4.*",
+ "magento/module-catalog-inventory-graph-ql": "100.4.*",
+ "magento/module-payment-graph-ql": "100.4.*"
},
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -35,3 +36,4 @@
}
}
}
+
diff --git a/app/code/Magento/RelatedProductGraphQl/composer.json b/app/code/Magento/RelatedProductGraphQl/composer.json
index 25bb6dc47722d..d06f681afc5ca 100644
--- a/app/code/Magento/RelatedProductGraphQl/composer.json
+++ b/app/code/Magento/RelatedProductGraphQl/composer.json
@@ -2,19 +2,20 @@
"name": "magento/module-related-product-graph-ql",
"description": "N/A",
"type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
+ "version": "100.4.2",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/module-catalog": "*",
- "magento/module-catalog-graph-ql": "*",
- "magento/framework": "*"
+ "magento/module-catalog": "104.0.*",
+ "magento/module-catalog-graph-ql": "100.4.*",
+ "magento/framework": "103.0.*"
},
"suggest": {
- "magento/module-graph-ql": "*"
+ "magento/module-graph-ql": "100.4.*"
},
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -24,3 +25,4 @@
}
}
}
+
diff --git a/app/code/Magento/ReleaseNotification/composer.json b/app/code/Magento/ReleaseNotification/composer.json
index 039ea30e339be..6d8fdc57ff4eb 100644
--- a/app/code/Magento/ReleaseNotification/composer.json
+++ b/app/code/Magento/ReleaseNotification/composer.json
@@ -1,21 +1,22 @@
{
"name": "magento/module-release-notification",
"description": "N/A",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/module-user": "*",
- "magento/module-backend": "*",
- "magento/module-ui": "*",
- "magento/framework": "*"
- },
- "suggest": {
- "magento/module-config": "*"
- },
"type": "magento2-module",
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.3",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/module-user": "101.2.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-ui": "101.2.*",
+ "magento/framework": "103.0.*"
+ },
+ "suggest": {
+ "magento/module-config": "101.2.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -25,3 +26,4 @@
}
}
}
+
diff --git a/app/code/Magento/RemoteStorage/composer.json b/app/code/Magento/RemoteStorage/composer.json
index ff2301d53ea60..80e27aeebf030 100644
--- a/app/code/Magento/RemoteStorage/composer.json
+++ b/app/code/Magento/RemoteStorage/composer.json
@@ -1,31 +1,32 @@
{
"name": "magento/module-remote-storage",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
+ "version": "100.4.3",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
+ "magento/framework": "103.0.*",
"league/flysystem": "~2.4.3",
"league/flysystem-aws-s3-v3": "^2.4.3"
},
"suggest": {
- "magento/module-backend": "*",
- "magento/module-sitemap": "*",
- "magento/module-cms": "*",
- "magento/module-downloadable": "*",
- "magento/module-catalog": "*",
- "magento/module-media-storage": "*",
- "magento/module-media-gallery-metadata": "*",
- "magento/module-media-gallery-synchronization": "*",
- "magento/module-import-export": "*",
- "magento/module-catalog-import-export": "*",
- "magento/module-downloadable-import-export": "*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-sitemap": "100.4.*",
+ "magento/module-cms": "104.0.*",
+ "magento/module-downloadable": "100.4.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-media-storage": "100.4.*",
+ "magento/module-media-gallery-metadata": "100.4.*",
+ "magento/module-media-gallery-synchronization": "100.4.*",
+ "magento/module-import-export": "101.0.*",
+ "magento/module-catalog-import-export": "101.1.*",
+ "magento/module-downloadable-import-export": "100.4.*",
"predis/predis": "*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -35,3 +36,4 @@
}
}
}
+
diff --git a/app/code/Magento/Reports/composer.json b/app/code/Magento/Reports/composer.json
index e758e3a739f91..5d9bf6b0b75ff 100644
--- a/app/code/Magento/Reports/composer.json
+++ b/app/code/Magento/Reports/composer.json
@@ -1,35 +1,36 @@
{
"name": "magento/module-reports",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-backend": "*",
- "magento/module-catalog": "*",
- "magento/module-catalog-inventory": "*",
- "magento/module-cms": "*",
- "magento/module-config": "*",
- "magento/module-customer": "*",
- "magento/module-downloadable": "*",
- "magento/module-eav": "*",
- "magento/module-quote": "*",
- "magento/module-review": "*",
- "magento/module-sales": "*",
- "magento/module-sales-rule": "*",
- "magento/module-store": "*",
- "magento/module-tax": "*",
- "magento/module-widget": "*",
- "magento/module-wishlist": "*",
- "magento/module-directory": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-catalog-inventory": "100.4.*",
+ "magento/module-cms": "104.0.*",
+ "magento/module-config": "101.2.*",
+ "magento/module-customer": "103.0.*",
+ "magento/module-downloadable": "100.4.*",
+ "magento/module-eav": "102.1.*",
+ "magento/module-quote": "101.2.*",
+ "magento/module-review": "100.4.*",
+ "magento/module-sales": "103.0.*",
+ "magento/module-sales-rule": "101.2.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-tax": "100.4.*",
+ "magento/module-widget": "101.2.*",
+ "magento/module-wishlist": "101.2.*",
+ "magento/module-directory": "100.4.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -39,3 +40,4 @@
}
}
}
+
diff --git a/app/code/Magento/RequireJs/composer.json b/app/code/Magento/RequireJs/composer.json
index 746b09474ec03..ebf2d0c8892c1 100644
--- a/app/code/Magento/RequireJs/composer.json
+++ b/app/code/Magento/RequireJs/composer.json
@@ -1,18 +1,19 @@
{
"name": "magento/module-require-js",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.1",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*"
+ "magento/framework": "103.0.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -22,3 +23,4 @@
}
}
}
+
diff --git a/app/code/Magento/Review/composer.json b/app/code/Magento/Review/composer.json
index b79ec24b633f3..408f49e51983d 100644
--- a/app/code/Magento/Review/composer.json
+++ b/app/code/Magento/Review/composer.json
@@ -1,30 +1,31 @@
{
"name": "magento/module-review",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-backend": "*",
- "magento/module-catalog": "*",
- "magento/module-customer": "*",
- "magento/module-eav": "*",
- "magento/module-newsletter": "*",
- "magento/module-store": "*",
- "magento/module-theme": "*",
- "magento/module-ui": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-customer": "103.0.*",
+ "magento/module-eav": "102.1.*",
+ "magento/module-newsletter": "100.4.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-theme": "101.1.*",
+ "magento/module-ui": "101.2.*"
},
"suggest": {
- "magento/module-cookie": "*",
- "magento/module-review-sample-data": "*"
+ "magento/module-cookie": "100.4.*",
+ "magento/module-review-sample-data": "Sample Data version: 100.4.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -34,3 +35,4 @@
}
}
}
+
diff --git a/app/code/Magento/ReviewAnalytics/composer.json b/app/code/Magento/ReviewAnalytics/composer.json
index 6694a8e8400cb..f4cd79b269fba 100644
--- a/app/code/Magento/ReviewAnalytics/composer.json
+++ b/app/code/Magento/ReviewAnalytics/composer.json
@@ -1,17 +1,18 @@
{
"name": "magento/module-review-analytics",
"description": "N/A",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-review": "*",
- "magento/module-analytics": "*"
- },
"type": "magento2-module",
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.2",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/framework": "103.0.*",
+ "magento/module-review": "100.4.*",
+ "magento/module-analytics": "100.4.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -21,3 +22,4 @@
}
}
}
+
diff --git a/app/code/Magento/ReviewGraphQl/composer.json b/app/code/Magento/ReviewGraphQl/composer.json
index ac1c11df1b8dc..1989614e17064 100644
--- a/app/code/Magento/ReviewGraphQl/composer.json
+++ b/app/code/Magento/ReviewGraphQl/composer.json
@@ -2,21 +2,22 @@
"name": "magento/module-review-graph-ql",
"description": "N/A",
"type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
+ "version": "100.4.1",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/module-catalog": "*",
- "magento/module-review": "*",
- "magento/module-store": "*",
- "magento/framework": "*"
+ "magento/module-catalog": "104.0.*",
+ "magento/module-review": "100.4.*",
+ "magento/module-store": "101.1.*",
+ "magento/framework": "103.0.*"
},
"suggest": {
- "magento/module-graph-ql": "*",
- "magento/module-graph-ql-cache": "*"
+ "magento/module-graph-ql": "100.4.*",
+ "magento/module-graph-ql-cache": "100.4.*"
},
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -26,3 +27,4 @@
}
}
}
+
diff --git a/app/code/Magento/Robots/composer.json b/app/code/Magento/Robots/composer.json
index d11d4568bf7d5..4d179f60e6ef3 100644
--- a/app/code/Magento/Robots/composer.json
+++ b/app/code/Magento/Robots/composer.json
@@ -1,22 +1,23 @@
{
"name": "magento/module-robots",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "101.1.1",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-store": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-store": "101.1.*"
},
"suggest": {
- "magento/module-theme": "*"
+ "magento/module-theme": "101.1.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -26,3 +27,4 @@
}
}
}
+
diff --git a/app/code/Magento/Rss/composer.json b/app/code/Magento/Rss/composer.json
index 0b89505e7e618..401e256f75c7c 100644
--- a/app/code/Magento/Rss/composer.json
+++ b/app/code/Magento/Rss/composer.json
@@ -1,21 +1,22 @@
{
"name": "magento/module-rss",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.3",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-backend": "*",
- "magento/module-customer": "*",
- "magento/module-store": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-customer": "103.0.*",
+ "magento/module-store": "101.1.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -25,3 +26,4 @@
}
}
}
+
diff --git a/app/code/Magento/Rule/composer.json b/app/code/Magento/Rule/composer.json
index a1b60b7e57eeb..21d8d1f038bcf 100644
--- a/app/code/Magento/Rule/composer.json
+++ b/app/code/Magento/Rule/composer.json
@@ -1,23 +1,24 @@
{
"name": "magento/module-rule",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.4",
"require": {
"php": "~7.4.0||~8.1.0",
"lib-libxml": "*",
- "magento/framework": "*",
- "magento/module-backend": "*",
- "magento/module-catalog": "*",
- "magento/module-eav": "*",
- "magento/module-store": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-eav": "102.1.*",
+ "magento/module-store": "101.1.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -27,3 +28,4 @@
}
}
}
+
diff --git a/app/code/Magento/Sales/Test/Mftf/Test/AdminCheckingDateAfterChangeFrenchCanadaInterfaceLocaleTest.xml b/app/code/Magento/Sales/Test/Mftf/Test/AdminCheckingDateAfterChangeFrenchCanadaInterfaceLocaleTest.xml
index 9e9eb02a5ddf1..39584381b6ef5 100644
--- a/app/code/Magento/Sales/Test/Mftf/Test/AdminCheckingDateAfterChangeFrenchCanadaInterfaceLocaleTest.xml
+++ b/app/code/Magento/Sales/Test/Mftf/Test/AdminCheckingDateAfterChangeFrenchCanadaInterfaceLocaleTest.xml
@@ -19,6 +19,9 @@
+
+ Skipped
+
diff --git a/app/code/Magento/Sales/composer.json b/app/code/Magento/Sales/composer.json
index 710d5c07d0490..5d51727d80f0d 100644
--- a/app/code/Magento/Sales/composer.json
+++ b/app/code/Magento/Sales/composer.json
@@ -1,45 +1,46 @@
{
"name": "magento/module-sales",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "103.0.5-p1",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-authorization": "*",
- "magento/module-backend": "*",
- "magento/module-catalog": "*",
- "magento/module-bundle": "*",
- "magento/module-catalog-inventory": "*",
- "magento/module-checkout": "*",
- "magento/module-config": "*",
- "magento/module-customer": "*",
- "magento/module-directory": "*",
- "magento/module-eav": "*",
- "magento/module-gift-message": "*",
- "magento/module-media-storage": "*",
- "magento/module-payment": "*",
- "magento/module-quote": "*",
- "magento/module-reports": "*",
- "magento/module-sales-rule": "*",
- "magento/module-sales-sequence": "*",
- "magento/module-shipping": "*",
- "magento/module-store": "*",
- "magento/module-tax": "*",
- "magento/module-theme": "*",
- "magento/module-ui": "*",
- "magento/module-widget": "*",
- "magento/module-wishlist": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-authorization": "100.4.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-bundle": "101.0.*",
+ "magento/module-catalog-inventory": "100.4.*",
+ "magento/module-checkout": "100.4.*",
+ "magento/module-config": "101.2.*",
+ "magento/module-customer": "103.0.*",
+ "magento/module-directory": "100.4.*",
+ "magento/module-eav": "102.1.*",
+ "magento/module-gift-message": "100.4.*",
+ "magento/module-media-storage": "100.4.*",
+ "magento/module-payment": "100.4.*",
+ "magento/module-quote": "101.2.*",
+ "magento/module-reports": "100.4.*",
+ "magento/module-sales-rule": "101.2.*",
+ "magento/module-sales-sequence": "100.4.*",
+ "magento/module-shipping": "100.4.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-tax": "100.4.*",
+ "magento/module-theme": "101.1.*",
+ "magento/module-ui": "101.2.*",
+ "magento/module-widget": "101.2.*",
+ "magento/module-wishlist": "101.2.*"
},
"suggest": {
- "magento/module-sales-sample-data": "*"
+ "magento/module-sales-sample-data": "Sample Data version: 100.4.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -49,3 +50,4 @@
}
}
}
+
diff --git a/app/code/Magento/SalesAnalytics/composer.json b/app/code/Magento/SalesAnalytics/composer.json
index 6be5b39e3df33..4dde5a8139405 100644
--- a/app/code/Magento/SalesAnalytics/composer.json
+++ b/app/code/Magento/SalesAnalytics/composer.json
@@ -1,17 +1,18 @@
{
"name": "magento/module-sales-analytics",
"description": "N/A",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-sales": "*",
- "magento/module-analytics": "*"
- },
"type": "magento2-module",
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.2",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/framework": "103.0.*",
+ "magento/module-sales": "103.0.*",
+ "magento/module-analytics": "100.4.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -21,3 +22,4 @@
}
}
}
+
diff --git a/app/code/Magento/SalesGraphQl/composer.json b/app/code/Magento/SalesGraphQl/composer.json
index dfa29321b033e..563e3b5430a06 100644
--- a/app/code/Magento/SalesGraphQl/composer.json
+++ b/app/code/Magento/SalesGraphQl/composer.json
@@ -2,21 +2,22 @@
"name": "magento/module-sales-graph-ql",
"description": "N/A",
"type": "magento2-module",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-sales": "*",
- "magento/module-store": "*",
- "magento/module-catalog": "*",
- "magento/module-tax": "*",
- "magento/module-quote": "*",
- "magento/module-graph-ql": "*",
- "magento/module-shipping": "*"
- },
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.5",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/framework": "103.0.*",
+ "magento/module-sales": "103.0.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-tax": "100.4.*",
+ "magento/module-quote": "101.2.*",
+ "magento/module-graph-ql": "100.4.*",
+ "magento/module-shipping": "100.4.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -26,3 +27,4 @@
}
}
}
+
diff --git a/app/code/Magento/SalesInventory/composer.json b/app/code/Magento/SalesInventory/composer.json
index e5c5e90f8dfb2..d4909a79c60f4 100644
--- a/app/code/Magento/SalesInventory/composer.json
+++ b/app/code/Magento/SalesInventory/composer.json
@@ -1,22 +1,23 @@
{
"name": "magento/module-sales-inventory",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.2",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-catalog": "*",
- "magento/module-catalog-inventory": "*",
- "magento/module-sales": "*",
- "magento/module-store": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-catalog-inventory": "100.4.*",
+ "magento/module-sales": "103.0.*",
+ "magento/module-store": "101.1.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -26,3 +27,4 @@
}
}
}
+
diff --git a/app/code/Magento/SalesRule/composer.json b/app/code/Magento/SalesRule/composer.json
index fef739ce979a7..d3e80e9e85910 100644
--- a/app/code/Magento/SalesRule/composer.json
+++ b/app/code/Magento/SalesRule/composer.json
@@ -1,42 +1,43 @@
{
"name": "magento/module-sales-rule",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "101.2.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/framework-bulk": "*",
- "magento/module-backend": "*",
- "magento/module-catalog": "*",
- "magento/module-catalog-rule": "*",
- "magento/module-config": "*",
- "magento/module-customer": "*",
- "magento/module-directory": "*",
- "magento/module-eav": "*",
- "magento/module-payment": "*",
- "magento/module-quote": "*",
- "magento/module-reports": "*",
- "magento/module-rule": "*",
- "magento/module-sales": "*",
- "magento/module-shipping": "*",
- "magento/module-store": "*",
- "magento/module-ui": "*",
- "magento/module-widget": "*",
- "magento/module-captcha": "*",
- "magento/module-checkout": "*",
- "magento/module-authorization": "*",
- "magento/module-asynchronous-operations": "*"
+ "magento/framework": "103.0.*",
+ "magento/framework-bulk": "101.0.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-catalog-rule": "101.2.*",
+ "magento/module-config": "101.2.*",
+ "magento/module-customer": "103.0.*",
+ "magento/module-directory": "100.4.*",
+ "magento/module-eav": "102.1.*",
+ "magento/module-payment": "100.4.*",
+ "magento/module-quote": "101.2.*",
+ "magento/module-reports": "100.4.*",
+ "magento/module-rule": "100.4.*",
+ "magento/module-sales": "103.0.*",
+ "magento/module-shipping": "100.4.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-ui": "101.2.*",
+ "magento/module-widget": "101.2.*",
+ "magento/module-captcha": "100.4.*",
+ "magento/module-checkout": "100.4.*",
+ "magento/module-authorization": "100.4.*",
+ "magento/module-asynchronous-operations": "100.4.*"
},
"suggest": {
- "magento/module-sales-rule-sample-data": "*"
+ "magento/module-sales-rule-sample-data": "Sample Data version: 100.4.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -46,3 +47,4 @@
}
}
}
+
diff --git a/app/code/Magento/SalesSequence/composer.json b/app/code/Magento/SalesSequence/composer.json
index d06655b83bfc2..739ae67c8bbd3 100644
--- a/app/code/Magento/SalesSequence/composer.json
+++ b/app/code/Magento/SalesSequence/composer.json
@@ -1,18 +1,19 @@
{
"name": "magento/module-sales-sequence",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.2",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*"
+ "magento/framework": "103.0.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -22,3 +23,4 @@
}
}
}
+
diff --git a/app/code/Magento/SampleData/composer.json b/app/code/Magento/SampleData/composer.json
index 05826fd71fc13..94cbfd14957da 100644
--- a/app/code/Magento/SampleData/composer.json
+++ b/app/code/Magento/SampleData/composer.json
@@ -1,21 +1,22 @@
{
"name": "magento/module-sample-data",
"description": "Sample Data fixtures",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.3",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*"
+ "magento/framework": "103.0.*"
},
"suggest": {
- "magento/sample-data-media": "*"
+ "magento/sample-data-media": "Sample Data version: 100.4.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"cli_commands.php",
@@ -26,3 +27,4 @@
}
}
}
+
diff --git a/app/code/Magento/Search/composer.json b/app/code/Magento/Search/composer.json
index 4b9241f8303d7..b3f6c74bd39ea 100644
--- a/app/code/Magento/Search/composer.json
+++ b/app/code/Magento/Search/composer.json
@@ -1,23 +1,24 @@
{
"name": "magento/module-search",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "101.1.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-backend": "*",
- "magento/module-catalog-search": "*",
- "magento/module-reports": "*",
- "magento/module-store": "*",
- "magento/module-ui": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-catalog-search": "102.0.*",
+ "magento/module-reports": "100.4.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-ui": "101.2.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -27,3 +28,4 @@
}
}
}
+
diff --git a/app/code/Magento/Security/composer.json b/app/code/Magento/Security/composer.json
index 07fd6655f678e..a482d1dfade46 100644
--- a/app/code/Magento/Security/composer.json
+++ b/app/code/Magento/Security/composer.json
@@ -1,25 +1,26 @@
{
"name": "magento/module-security",
"description": "Security management module",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-config": "*",
- "magento/module-backend": "*",
- "magento/module-store": "*",
- "magento/module-user": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-config": "101.2.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-user": "101.2.*"
},
"suggest": {
- "magento/module-customer": "*"
+ "magento/module-customer": "103.0.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -29,3 +30,4 @@
}
}
}
+
diff --git a/app/code/Magento/SendFriend/composer.json b/app/code/Magento/SendFriend/composer.json
index 47623f8f683a1..64540b0fd2212 100644
--- a/app/code/Magento/SendFriend/composer.json
+++ b/app/code/Magento/SendFriend/composer.json
@@ -1,24 +1,25 @@
{
"name": "magento/module-send-friend",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.3",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-catalog": "*",
- "magento/module-customer": "*",
- "magento/module-store": "*",
- "magento/module-captcha": "*",
- "magento/module-authorization": "*",
- "magento/module-theme": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-customer": "103.0.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-captcha": "100.4.*",
+ "magento/module-authorization": "100.4.*",
+ "magento/module-theme": "101.1.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -28,3 +29,4 @@
}
}
}
+
diff --git a/app/code/Magento/SendFriendGraphQl/composer.json b/app/code/Magento/SendFriendGraphQl/composer.json
index e836197fd42e1..c41cfbe183601 100644
--- a/app/code/Magento/SendFriendGraphQl/composer.json
+++ b/app/code/Magento/SendFriendGraphQl/composer.json
@@ -2,17 +2,18 @@
"name": "magento/module-send-friend-graph-ql",
"description": "N/A",
"type": "magento2-module",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-catalog": "*",
- "magento/module-send-friend": "*",
- "magento/module-graph-ql": "*"
- },
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.1",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/framework": "103.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-send-friend": "100.4.*",
+ "magento/module-graph-ql": "100.4.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -22,3 +23,4 @@
}
}
}
+
diff --git a/app/code/Magento/Shipping/composer.json b/app/code/Magento/Shipping/composer.json
index 8afbe9553094f..55ea11e030b2f 100644
--- a/app/code/Magento/Shipping/composer.json
+++ b/app/code/Magento/Shipping/composer.json
@@ -1,37 +1,38 @@
{
"name": "magento/module-shipping",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.5",
"require": {
"php": "~7.4.0||~8.1.0",
"ext-gd": "*",
- "magento/framework": "*",
- "magento/module-backend": "*",
- "magento/module-catalog": "*",
- "magento/module-catalog-inventory": "*",
- "magento/module-contact": "*",
- "magento/module-customer": "*",
- "magento/module-directory": "*",
- "magento/module-payment": "*",
- "magento/module-quote": "*",
- "magento/module-sales": "*",
- "magento/module-store": "*",
- "magento/module-tax": "*",
- "magento/module-ui": "*",
- "magento/module-user": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-catalog-inventory": "100.4.*",
+ "magento/module-contact": "100.4.*",
+ "magento/module-customer": "103.0.*",
+ "magento/module-directory": "100.4.*",
+ "magento/module-payment": "100.4.*",
+ "magento/module-quote": "101.2.*",
+ "magento/module-sales": "103.0.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-tax": "100.4.*",
+ "magento/module-ui": "101.2.*",
+ "magento/module-user": "101.2.*"
},
"suggest": {
- "magento/module-fedex": "*",
- "magento/module-ups": "*",
- "magento/module-config": "*"
+ "magento/module-fedex": "100.4.*",
+ "magento/module-ups": "100.4.*",
+ "magento/module-config": "101.2.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -41,3 +42,4 @@
}
}
}
+
diff --git a/app/code/Magento/Sitemap/composer.json b/app/code/Magento/Sitemap/composer.json
index be9826186e128..3dea4bdd961d8 100644
--- a/app/code/Magento/Sitemap/composer.json
+++ b/app/code/Magento/Sitemap/composer.json
@@ -1,30 +1,31 @@
{
"name": "magento/module-sitemap",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.4",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-backend": "*",
- "magento/module-catalog": "*",
- "magento/module-catalog-url-rewrite": "*",
- "magento/module-cms": "*",
- "magento/module-config": "*",
- "magento/module-eav": "*",
- "magento/module-media-storage": "*",
- "magento/module-robots": "*",
- "magento/module-store": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-catalog-url-rewrite": "100.4.*",
+ "magento/module-cms": "104.0.*",
+ "magento/module-config": "101.2.*",
+ "magento/module-eav": "102.1.*",
+ "magento/module-media-storage": "100.4.*",
+ "magento/module-robots": "101.1.*",
+ "magento/module-store": "101.1.*"
},
"suggest": {
- "magento/module-config": "*"
+ "magento/module-config": "101.2.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -34,3 +35,4 @@
}
}
}
+
diff --git a/app/code/Magento/Store/composer.json b/app/code/Magento/Store/composer.json
index 6dd17c590490e..41268e97508c5 100644
--- a/app/code/Magento/Store/composer.json
+++ b/app/code/Magento/Store/composer.json
@@ -1,29 +1,30 @@
{
"name": "magento/module-store",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "101.1.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-catalog": "*",
- "magento/module-config": "*",
- "magento/module-directory": "*",
- "magento/module-media-storage": "*",
- "magento/module-ui": "*",
- "magento/module-customer": "*",
- "magento/module-authorization": "*",
- "magento/module-backend": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-config": "101.2.*",
+ "magento/module-directory": "100.4.*",
+ "magento/module-media-storage": "100.4.*",
+ "magento/module-ui": "101.2.*",
+ "magento/module-customer": "103.0.*",
+ "magento/module-authorization": "100.4.*",
+ "magento/module-backend": "102.0.*"
},
"suggest": {
- "magento/module-deploy": "*"
+ "magento/module-deploy": "100.4.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -33,3 +34,4 @@
}
}
}
+
diff --git a/app/code/Magento/StoreGraphQl/composer.json b/app/code/Magento/StoreGraphQl/composer.json
index d5cb8d1ff4176..e29fc85137289 100644
--- a/app/code/Magento/StoreGraphQl/composer.json
+++ b/app/code/Magento/StoreGraphQl/composer.json
@@ -2,17 +2,18 @@
"name": "magento/module-store-graph-ql",
"description": "N/A",
"type": "magento2-module",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-store": "*",
- "magento/module-graph-ql": "*",
- "magento/module-graph-ql-cache": "*"
- },
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.3",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/framework": "103.0.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-graph-ql": "100.4.*",
+ "magento/module-graph-ql-cache": "100.4.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -22,3 +23,4 @@
}
}
}
+
diff --git a/app/code/Magento/Swagger/composer.json b/app/code/Magento/Swagger/composer.json
index 0a7b1c401886c..4a9ed664a2f98 100644
--- a/app/code/Magento/Swagger/composer.json
+++ b/app/code/Magento/Swagger/composer.json
@@ -1,18 +1,19 @@
{
"name": "magento/module-swagger",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.4",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*"
+ "magento/framework": "103.0.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -22,3 +23,4 @@
}
}
}
+
diff --git a/app/code/Magento/SwaggerWebapi/composer.json b/app/code/Magento/SwaggerWebapi/composer.json
index dd1dc5d0011af..7b67e848f7045 100644
--- a/app/code/Magento/SwaggerWebapi/composer.json
+++ b/app/code/Magento/SwaggerWebapi/composer.json
@@ -1,19 +1,20 @@
{
"name": "magento/module-swagger-webapi",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.1",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-swagger": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-swagger": "100.4.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -23,3 +24,4 @@
}
}
}
+
diff --git a/app/code/Magento/SwaggerWebapiAsync/composer.json b/app/code/Magento/SwaggerWebapiAsync/composer.json
index e69821cc1067a..144a08cc35958 100644
--- a/app/code/Magento/SwaggerWebapiAsync/composer.json
+++ b/app/code/Magento/SwaggerWebapiAsync/composer.json
@@ -1,22 +1,23 @@
{
"name": "magento/module-swagger-webapi-async",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.1",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-swagger": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-swagger": "100.4.*"
},
"suggest": {
- "magento/module-config": "*"
+ "magento/module-config": "101.2.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -26,3 +27,4 @@
}
}
}
+
diff --git a/app/code/Magento/Swatches/Test/Mftf/ActionGroup/AssertStorefrontSwatchColorActionGroup.xml b/app/code/Magento/Swatches/Test/Mftf/ActionGroup/AssertStorefrontSwatchColorActionGroup.xml
index b48494a85ae2c..a8dce74036b59 100644
--- a/app/code/Magento/Swatches/Test/Mftf/ActionGroup/AssertStorefrontSwatchColorActionGroup.xml
+++ b/app/code/Magento/Swatches/Test/Mftf/ActionGroup/AssertStorefrontSwatchColorActionGroup.xml
@@ -17,7 +17,8 @@
-
+
{$grabStyle1}
background: center center no-repeat {{expectedRgb}};
diff --git a/app/code/Magento/Swatches/Test/Mftf/ActionGroup/AssertSwatchColorActionGroup.xml b/app/code/Magento/Swatches/Test/Mftf/ActionGroup/AssertSwatchColorActionGroup.xml
index f978afd7d2ca0..daf67d2f3f103 100644
--- a/app/code/Magento/Swatches/Test/Mftf/ActionGroup/AssertSwatchColorActionGroup.xml
+++ b/app/code/Magento/Swatches/Test/Mftf/ActionGroup/AssertSwatchColorActionGroup.xml
@@ -17,7 +17,8 @@
-
+
{$grabStyle1}
{{expectedStyle}}
diff --git a/app/code/Magento/Swatches/Test/Mftf/Section/AdminManageSwatchSection.xml b/app/code/Magento/Swatches/Test/Mftf/Section/AdminManageSwatchSection.xml
index dd5f6d6812436..449f917463fc8 100644
--- a/app/code/Magento/Swatches/Test/Mftf/Section/AdminManageSwatchSection.xml
+++ b/app/code/Magento/Swatches/Test/Mftf/Section/AdminManageSwatchSection.xml
@@ -27,5 +27,6 @@
+
diff --git a/app/code/Magento/Swatches/Test/Mftf/Test/StorefrontFilterByImageSwatchTest.xml b/app/code/Magento/Swatches/Test/Mftf/Test/StorefrontFilterByImageSwatchTest.xml
index 201cd7d59104a..8ecae7e0137a1 100644
--- a/app/code/Magento/Swatches/Test/Mftf/Test/StorefrontFilterByImageSwatchTest.xml
+++ b/app/code/Magento/Swatches/Test/Mftf/Test/StorefrontFilterByImageSwatchTest.xml
@@ -42,6 +42,7 @@
+
@@ -57,7 +58,7 @@
-
+
diff --git a/app/code/Magento/Swatches/composer.json b/app/code/Magento/Swatches/composer.json
index d2f9201e8be5e..4f3df65105e56 100644
--- a/app/code/Magento/Swatches/composer.json
+++ b/app/code/Magento/Swatches/composer.json
@@ -1,32 +1,33 @@
{
"name": "magento/module-swatches",
"description": "Add Swatches to Products",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.5-p1",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-backend": "*",
- "magento/module-catalog": "*",
- "magento/module-config": "*",
- "magento/module-configurable-product": "*",
- "magento/module-customer": "*",
- "magento/module-eav": "*",
- "magento/module-page-cache": "*",
- "magento/module-media-storage": "*",
- "magento/module-store": "*",
- "magento/module-theme": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-config": "101.2.*",
+ "magento/module-configurable-product": "100.4.*",
+ "magento/module-customer": "103.0.*",
+ "magento/module-eav": "102.1.*",
+ "magento/module-page-cache": "100.4.*",
+ "magento/module-media-storage": "100.4.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-theme": "101.1.*"
},
"suggest": {
- "magento/module-layered-navigation": "*",
- "magento/module-swatches-sample-data": "*"
+ "magento/module-layered-navigation": "100.4.*",
+ "magento/module-swatches-sample-data": "Sample Data version: 100.4.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -36,3 +37,4 @@
}
}
}
+
diff --git a/app/code/Magento/SwatchesGraphQl/composer.json b/app/code/Magento/SwatchesGraphQl/composer.json
index 1dc7a1528ad1b..15dd0cb85abe9 100644
--- a/app/code/Magento/SwatchesGraphQl/composer.json
+++ b/app/code/Magento/SwatchesGraphQl/composer.json
@@ -2,20 +2,21 @@
"name": "magento/module-swatches-graph-ql",
"description": "N/A",
"type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
+ "version": "100.4.3",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-swatches": "*",
- "magento/module-catalog": "*",
- "magento/module-catalog-graph-ql": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-swatches": "100.4.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-catalog-graph-ql": "100.4.*"
},
"suggest": {
- "magento/module-configurable-product-graph-ql": "*"
+ "magento/module-configurable-product-graph-ql": "100.4.*"
},
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -25,3 +26,4 @@
}
}
}
+
diff --git a/app/code/Magento/SwatchesLayeredNavigation/composer.json b/app/code/Magento/SwatchesLayeredNavigation/composer.json
index 9af558ec757e4..120287d6a37fd 100644
--- a/app/code/Magento/SwatchesLayeredNavigation/composer.json
+++ b/app/code/Magento/SwatchesLayeredNavigation/composer.json
@@ -1,19 +1,20 @@
{
"name": "magento/module-swatches-layered-navigation",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.1",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
+ "magento/framework": "103.0.*",
"magento/magento-composer-installer": "*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -23,3 +24,4 @@
}
}
}
+
diff --git a/app/code/Magento/Tax/composer.json b/app/code/Magento/Tax/composer.json
index e5628b04cc3f9..09caf11c3e310 100644
--- a/app/code/Magento/Tax/composer.json
+++ b/app/code/Magento/Tax/composer.json
@@ -1,35 +1,36 @@
{
"name": "magento/module-tax",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-backend": "*",
- "magento/module-catalog": "*",
- "magento/module-checkout": "*",
- "magento/module-config": "*",
- "magento/module-customer": "*",
- "magento/module-directory": "*",
- "magento/module-eav": "*",
- "magento/module-page-cache": "*",
- "magento/module-quote": "*",
- "magento/module-reports": "*",
- "magento/module-sales": "*",
- "magento/module-shipping": "*",
- "magento/module-store": "*",
- "magento/module-ui": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-checkout": "100.4.*",
+ "magento/module-config": "101.2.*",
+ "magento/module-customer": "103.0.*",
+ "magento/module-directory": "100.4.*",
+ "magento/module-eav": "102.1.*",
+ "magento/module-page-cache": "100.4.*",
+ "magento/module-quote": "101.2.*",
+ "magento/module-reports": "100.4.*",
+ "magento/module-sales": "103.0.*",
+ "magento/module-shipping": "100.4.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-ui": "101.2.*"
},
"suggest": {
- "magento/module-tax-sample-data": "*"
+ "magento/module-tax-sample-data": "Sample Data version: 100.4.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -39,3 +40,4 @@
}
}
}
+
diff --git a/app/code/Magento/TaxGraphQl/composer.json b/app/code/Magento/TaxGraphQl/composer.json
index 3ebd323fbfe12..71174a3f91698 100644
--- a/app/code/Magento/TaxGraphQl/composer.json
+++ b/app/code/Magento/TaxGraphQl/composer.json
@@ -2,18 +2,19 @@
"name": "magento/module-tax-graph-ql",
"description": "N/A",
"type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
+ "version": "100.4.1",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*"
+ "magento/framework": "103.0.*"
},
"suggest": {
- "magento/module-tax": "*",
- "magento/module-catalog-graph-ql": "*"
+ "magento/module-tax": "100.4.*",
+ "magento/module-catalog-graph-ql": "100.4.*"
},
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -23,3 +24,4 @@
}
}
}
+
diff --git a/app/code/Magento/TaxImportExport/composer.json b/app/code/Magento/TaxImportExport/composer.json
index b83fe6dcdacf1..e1f81eb8fe508 100644
--- a/app/code/Magento/TaxImportExport/composer.json
+++ b/app/code/Magento/TaxImportExport/composer.json
@@ -1,23 +1,24 @@
{
"name": "magento/module-tax-import-export",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.4",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-backend": "*",
- "magento/module-directory": "*",
- "magento/module-store": "*",
- "magento/module-tax": "*",
- "magento/module-ui": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-directory": "100.4.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-tax": "100.4.*",
+ "magento/module-ui": "101.2.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -27,3 +28,4 @@
}
}
}
+
diff --git a/app/code/Magento/Theme/composer.json b/app/code/Magento/Theme/composer.json
index 80fe77d9c123f..c0d08788ba5b2 100644
--- a/app/code/Magento/Theme/composer.json
+++ b/app/code/Magento/Theme/composer.json
@@ -1,33 +1,34 @@
{
"name": "magento/module-theme",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "101.1.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-backend": "*",
- "magento/module-cms": "*",
- "magento/module-config": "*",
- "magento/module-customer": "*",
- "magento/module-eav": "*",
- "magento/module-media-storage": "*",
- "magento/module-require-js": "*",
- "magento/module-store": "*",
- "magento/module-ui": "*",
- "magento/module-widget": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-cms": "104.0.*",
+ "magento/module-config": "101.2.*",
+ "magento/module-customer": "103.0.*",
+ "magento/module-eav": "102.1.*",
+ "magento/module-media-storage": "100.4.*",
+ "magento/module-require-js": "100.4.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-ui": "101.2.*",
+ "magento/module-widget": "101.2.*"
},
"suggest": {
- "magento/module-theme-sample-data": "*",
- "magento/module-deploy": "*",
- "magento/module-directory": "*"
+ "magento/module-theme-sample-data": "Sample Data version: 100.4.*",
+ "magento/module-deploy": "100.4.*",
+ "magento/module-directory": "100.4.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -37,3 +38,4 @@
}
}
}
+
diff --git a/app/code/Magento/ThemeGraphQl/composer.json b/app/code/Magento/ThemeGraphQl/composer.json
index dbb9afddd7df0..723fd8cb5c497 100644
--- a/app/code/Magento/ThemeGraphQl/composer.json
+++ b/app/code/Magento/ThemeGraphQl/composer.json
@@ -2,17 +2,18 @@
"name": "magento/module-theme-graph-ql",
"description": "N/A",
"type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
+ "version": "100.4.2",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*"
+ "magento/framework": "103.0.*"
},
"suggest": {
- "magento/module-store-graph-ql": "*"
+ "magento/module-store-graph-ql": "100.4.*"
},
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -22,3 +23,4 @@
}
}
}
+
diff --git a/app/code/Magento/Translation/composer.json b/app/code/Magento/Translation/composer.json
index 28f6a54cc301f..04edc01769524 100644
--- a/app/code/Magento/Translation/composer.json
+++ b/app/code/Magento/Translation/composer.json
@@ -1,26 +1,27 @@
{
"name": "magento/module-translation",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-backend": "*",
- "magento/module-developer": "*",
- "magento/module-store": "*",
- "magento/module-theme": "*",
- "magento/module-deploy": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-developer": "100.4.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-theme": "101.1.*",
+ "magento/module-deploy": "100.4.*"
},
"suggest": {
- "magento/module-deploy": "*"
+ "magento/module-deploy": "100.4.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -30,3 +31,4 @@
}
}
}
+
diff --git a/app/code/Magento/Ui/composer.json b/app/code/Magento/Ui/composer.json
index 8d6650101b5b2..0d84575933179 100644
--- a/app/code/Magento/Ui/composer.json
+++ b/app/code/Magento/Ui/composer.json
@@ -1,26 +1,27 @@
{
"name": "magento/module-ui",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "101.2.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-authorization": "*",
- "magento/module-backend": "*",
- "magento/module-eav": "*",
- "magento/module-store": "*",
- "magento/module-user": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-authorization": "100.4.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-eav": "102.1.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-user": "101.2.*"
},
"suggest": {
- "magento/module-config": "*"
+ "magento/module-config": "101.2.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -30,3 +31,4 @@
}
}
}
+
diff --git a/app/code/Magento/Ups/composer.json b/app/code/Magento/Ups/composer.json
index e34416ef0c05f..62fa545c8764c 100644
--- a/app/code/Magento/Ups/composer.json
+++ b/app/code/Magento/Ups/composer.json
@@ -1,28 +1,29 @@
{
"name": "magento/module-ups",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-backend": "*",
- "magento/module-catalog-inventory": "*",
- "magento/module-directory": "*",
- "magento/module-quote": "*",
- "magento/module-sales": "*",
- "magento/module-shipping": "*",
- "magento/module-store": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-catalog-inventory": "100.4.*",
+ "magento/module-directory": "100.4.*",
+ "magento/module-quote": "101.2.*",
+ "magento/module-sales": "103.0.*",
+ "magento/module-shipping": "100.4.*",
+ "magento/module-store": "101.1.*"
},
"suggest": {
- "magento/module-config": "*"
+ "magento/module-config": "101.2.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -32,3 +33,4 @@
}
}
}
+
diff --git a/app/code/Magento/UrlRewrite/composer.json b/app/code/Magento/UrlRewrite/composer.json
index 84f06e17b6465..e10edbc542107 100644
--- a/app/code/Magento/UrlRewrite/composer.json
+++ b/app/code/Magento/UrlRewrite/composer.json
@@ -1,25 +1,26 @@
{
"name": "magento/module-url-rewrite",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "102.0.4",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-backend": "*",
- "magento/module-catalog": "*",
- "magento/module-catalog-url-rewrite": "*",
- "magento/module-cms": "*",
- "magento/module-cms-url-rewrite": "*",
- "magento/module-store": "*",
- "magento/module-ui": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-catalog-url-rewrite": "100.4.*",
+ "magento/module-cms": "104.0.*",
+ "magento/module-cms-url-rewrite": "100.4.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-ui": "101.2.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -29,3 +30,4 @@
}
}
}
+
diff --git a/app/code/Magento/UrlRewriteGraphQl/composer.json b/app/code/Magento/UrlRewriteGraphQl/composer.json
index 3e943ecf3e749..9cd0c7e97de75 100644
--- a/app/code/Magento/UrlRewriteGraphQl/composer.json
+++ b/app/code/Magento/UrlRewriteGraphQl/composer.json
@@ -2,18 +2,19 @@
"name": "magento/module-url-rewrite-graph-ql",
"description": "N/A",
"type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
+ "version": "100.4.4",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-url-rewrite": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-url-rewrite": "102.0.*"
},
"suggest": {
- "magento/module-graph-ql": "*"
+ "magento/module-graph-ql": "100.4.*"
},
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -23,3 +24,4 @@
}
}
}
+
diff --git a/app/code/Magento/User/composer.json b/app/code/Magento/User/composer.json
index 0008abc75e5be..58f743d445c7b 100644
--- a/app/code/Magento/User/composer.json
+++ b/app/code/Magento/User/composer.json
@@ -1,25 +1,26 @@
{
"name": "magento/module-user",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "101.2.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-authorization": "*",
- "magento/module-backend": "*",
- "magento/module-email": "*",
- "magento/module-integration": "*",
- "magento/module-security": "*",
- "magento/module-store": "*",
- "magento/module-ui": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-authorization": "100.4.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-email": "101.1.*",
+ "magento/module-integration": "100.4.*",
+ "magento/module-security": "100.4.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-ui": "101.2.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -29,3 +30,4 @@
}
}
}
+
diff --git a/app/code/Magento/Usps/composer.json b/app/code/Magento/Usps/composer.json
index 8471b83a41246..325763bac1df7 100644
--- a/app/code/Magento/Usps/composer.json
+++ b/app/code/Magento/Usps/composer.json
@@ -1,27 +1,28 @@
{
"name": "magento/module-usps",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.4",
"require": {
"php": "~7.4.0||~8.1.0",
"lib-libxml": "*",
- "magento/framework": "*",
- "magento/module-catalog": "*",
- "magento/module-catalog-inventory": "*",
- "magento/module-config": "*",
- "magento/module-directory": "*",
- "magento/module-quote": "*",
- "magento/module-sales": "*",
- "magento/module-shipping": "*",
- "magento/module-store": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-catalog-inventory": "100.4.*",
+ "magento/module-config": "101.2.*",
+ "magento/module-directory": "100.4.*",
+ "magento/module-quote": "101.2.*",
+ "magento/module-sales": "103.0.*",
+ "magento/module-shipping": "100.4.*",
+ "magento/module-store": "101.1.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -31,3 +32,4 @@
}
}
}
+
diff --git a/app/code/Magento/Variable/composer.json b/app/code/Magento/Variable/composer.json
index a65fefb589422..6dddcc0478259 100644
--- a/app/code/Magento/Variable/composer.json
+++ b/app/code/Magento/Variable/composer.json
@@ -1,22 +1,23 @@
{
"name": "magento/module-variable",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.3",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-backend": "*",
- "magento/module-store": "*",
- "magento/module-config": "*",
- "magento/module-ui": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-config": "101.2.*",
+ "magento/module-ui": "101.2.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -26,3 +27,4 @@
}
}
}
+
diff --git a/app/code/Magento/Vault/composer.json b/app/code/Magento/Vault/composer.json
index e285571634993..feb1a84aa5d6c 100644
--- a/app/code/Magento/Vault/composer.json
+++ b/app/code/Magento/Vault/composer.json
@@ -1,25 +1,25 @@
{
"name": "magento/module-vault",
- "description": "",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "101.2.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-checkout": "*",
- "magento/module-customer": "*",
- "magento/module-payment": "*",
- "magento/module-quote": "*",
- "magento/module-sales": "*",
- "magento/module-store": "*",
- "magento/module-theme": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-checkout": "100.4.*",
+ "magento/module-customer": "103.0.*",
+ "magento/module-payment": "100.4.*",
+ "magento/module-quote": "101.2.*",
+ "magento/module-sales": "103.0.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-theme": "101.1.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -29,3 +29,4 @@
}
}
}
+
diff --git a/app/code/Magento/VaultGraphQl/composer.json b/app/code/Magento/VaultGraphQl/composer.json
index e4a5dd65fa76d..ef87a3c52af74 100644
--- a/app/code/Magento/VaultGraphQl/composer.json
+++ b/app/code/Magento/VaultGraphQl/composer.json
@@ -2,16 +2,17 @@
"name": "magento/module-vault-graph-ql",
"description": "N/A",
"type": "magento2-module",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-vault": "*",
- "magento/module-graph-ql": "*"
- },
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.1",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/framework": "103.0.*",
+ "magento/module-vault": "101.2.*",
+ "magento/module-graph-ql": "100.4.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -21,3 +22,4 @@
}
}
}
+
diff --git a/app/code/Magento/Version/composer.json b/app/code/Magento/Version/composer.json
index dc9ac096f7215..7b5b70d1d5862 100644
--- a/app/code/Magento/Version/composer.json
+++ b/app/code/Magento/Version/composer.json
@@ -1,18 +1,19 @@
{
"name": "magento/module-version",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.2",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*"
+ "magento/framework": "103.0.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -22,3 +23,4 @@
}
}
}
+
diff --git a/app/code/Magento/Webapi/composer.json b/app/code/Magento/Webapi/composer.json
index 6a4823d2b1d15..b8f55026f9f84 100644
--- a/app/code/Magento/Webapi/composer.json
+++ b/app/code/Magento/Webapi/composer.json
@@ -1,26 +1,27 @@
{
"name": "magento/module-webapi",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.4",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-authorization": "*",
- "magento/module-backend": "*",
- "magento/module-integration": "*",
- "magento/module-store": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-authorization": "100.4.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-integration": "100.4.*",
+ "magento/module-store": "101.1.*"
},
"suggest": {
- "magento/module-user": "*",
- "magento/module-customer": "*"
+ "magento/module-user": "101.2.*",
+ "magento/module-customer": "103.0.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -30,3 +31,4 @@
}
}
}
+
diff --git a/app/code/Magento/WebapiAsync/composer.json b/app/code/Magento/WebapiAsync/composer.json
index 7627a890f8303..612ce4620b9d4 100644
--- a/app/code/Magento/WebapiAsync/composer.json
+++ b/app/code/Magento/WebapiAsync/composer.json
@@ -1,25 +1,26 @@
{
"name": "magento/module-webapi-async",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.3",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-webapi": "*",
- "magento/module-asynchronous-operations": "*",
- "magento/module-store": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-webapi": "100.4.*",
+ "magento/module-asynchronous-operations": "100.4.*",
+ "magento/module-store": "101.1.*"
},
"suggest": {
- "magento/module-user": "*",
- "magento/module-customer": "*"
+ "magento/module-user": "101.2.*",
+ "magento/module-customer": "103.0.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -29,3 +30,4 @@
}
}
}
+
diff --git a/app/code/Magento/WebapiSecurity/composer.json b/app/code/Magento/WebapiSecurity/composer.json
index bb4d8c10be48c..fb103bb1d2556 100644
--- a/app/code/Magento/WebapiSecurity/composer.json
+++ b/app/code/Magento/WebapiSecurity/composer.json
@@ -1,19 +1,20 @@
{
"name": "magento/module-webapi-security",
"description": "WebapiSecurity module provides option to loosen security on some webapi resources.",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.2",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-webapi": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-webapi": "100.4.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -23,3 +24,4 @@
}
}
}
+
diff --git a/app/code/Magento/Weee/composer.json b/app/code/Magento/Weee/composer.json
index 3086929d12c0a..8dd5f8e469215 100644
--- a/app/code/Magento/Weee/composer.json
+++ b/app/code/Magento/Weee/composer.json
@@ -1,33 +1,34 @@
{
"name": "magento/module-weee",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-backend": "*",
- "magento/module-catalog": "*",
- "magento/module-checkout": "*",
- "magento/module-customer": "*",
- "magento/module-directory": "*",
- "magento/module-eav": "*",
- "magento/module-page-cache": "*",
- "magento/module-quote": "*",
- "magento/module-sales": "*",
- "magento/module-store": "*",
- "magento/module-tax": "*",
- "magento/module-ui": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-checkout": "100.4.*",
+ "magento/module-customer": "103.0.*",
+ "magento/module-directory": "100.4.*",
+ "magento/module-eav": "102.1.*",
+ "magento/module-page-cache": "100.4.*",
+ "magento/module-quote": "101.2.*",
+ "magento/module-sales": "103.0.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-tax": "100.4.*",
+ "magento/module-ui": "101.2.*"
},
"suggest": {
- "magento/module-bundle": "*"
+ "magento/module-bundle": "101.0.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -37,3 +38,4 @@
}
}
}
+
diff --git a/app/code/Magento/WeeeGraphQl/composer.json b/app/code/Magento/WeeeGraphQl/composer.json
index 1cda2e3bc753b..67fe583b15bdc 100644
--- a/app/code/Magento/WeeeGraphQl/composer.json
+++ b/app/code/Magento/WeeeGraphQl/composer.json
@@ -2,20 +2,21 @@
"name": "magento/module-weee-graph-ql",
"description": "N/A",
"type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
+ "version": "100.4.2",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-store": "*",
- "magento/module-tax": "*",
- "magento/module-weee": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-tax": "100.4.*",
+ "magento/module-weee": "100.4.*"
},
"suggest": {
- "magento/module-catalog-graph-ql": "*"
+ "magento/module-catalog-graph-ql": "100.4.*"
},
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -25,3 +26,4 @@
}
}
}
+
diff --git a/app/code/Magento/Widget/composer.json b/app/code/Magento/Widget/composer.json
index 5538cc70bff45..538d5e7c0a895 100644
--- a/app/code/Magento/Widget/composer.json
+++ b/app/code/Magento/Widget/composer.json
@@ -1,29 +1,30 @@
{
"name": "magento/module-widget",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "101.2.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-backend": "*",
- "magento/module-catalog": "*",
- "magento/module-cms": "*",
- "magento/module-email": "*",
- "magento/module-store": "*",
- "magento/module-theme": "*",
- "magento/module-variable": "*",
- "magento/module-ui": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-cms": "104.0.*",
+ "magento/module-email": "101.1.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-theme": "101.1.*",
+ "magento/module-variable": "100.4.*",
+ "magento/module-ui": "101.2.*"
},
"suggest": {
- "magento/module-widget-sample-data": "*"
+ "magento/module-widget-sample-data": "Sample Data version: 100.4.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -33,3 +34,4 @@
}
}
}
+
diff --git a/app/code/Magento/Wishlist/composer.json b/app/code/Magento/Wishlist/composer.json
index 4a9ce797c9add..81fd73615f8e5 100644
--- a/app/code/Magento/Wishlist/composer.json
+++ b/app/code/Magento/Wishlist/composer.json
@@ -1,37 +1,38 @@
{
"name": "magento/module-wishlist",
"description": "N/A",
+ "type": "magento2-module",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "101.2.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-backend": "*",
- "magento/module-catalog": "*",
- "magento/module-catalog-inventory": "*",
- "magento/module-checkout": "*",
- "magento/module-customer": "*",
- "magento/module-rss": "*",
- "magento/module-sales": "*",
- "magento/module-store": "*",
- "magento/module-theme": "*",
- "magento/module-ui": "*",
- "magento/module-captcha": "*"
+ "magento/framework": "103.0.*",
+ "magento/module-backend": "102.0.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-catalog-inventory": "100.4.*",
+ "magento/module-checkout": "100.4.*",
+ "magento/module-customer": "103.0.*",
+ "magento/module-rss": "100.4.*",
+ "magento/module-sales": "103.0.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-theme": "101.1.*",
+ "magento/module-ui": "101.2.*",
+ "magento/module-captcha": "100.4.*"
},
"suggest": {
- "magento/module-configurable-product": "*",
- "magento/module-downloadable": "*",
- "magento/module-bundle": "*",
- "magento/module-cookie": "*",
- "magento/module-grouped-product": "*",
- "magento/module-wishlist-sample-data": "*"
+ "magento/module-configurable-product": "100.4.*",
+ "magento/module-downloadable": "100.4.*",
+ "magento/module-bundle": "101.0.*",
+ "magento/module-cookie": "100.4.*",
+ "magento/module-grouped-product": "100.4.*",
+ "magento/module-wishlist-sample-data": "Sample Data version: 100.4.*"
},
- "type": "magento2-module",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
@@ -41,3 +42,4 @@
}
}
}
+
diff --git a/app/code/Magento/WishlistAnalytics/composer.json b/app/code/Magento/WishlistAnalytics/composer.json
index 0a313416ce474..7df3f9556c9bc 100644
--- a/app/code/Magento/WishlistAnalytics/composer.json
+++ b/app/code/Magento/WishlistAnalytics/composer.json
@@ -1,17 +1,18 @@
{
"name": "magento/module-wishlist-analytics",
"description": "N/A",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-wishlist": "*",
- "magento/module-analytics": "*"
- },
"type": "magento2-module",
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.3",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/framework": "103.0.*",
+ "magento/module-wishlist": "101.2.*",
+ "magento/module-analytics": "100.4.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -21,3 +22,4 @@
}
}
}
+
diff --git a/app/code/Magento/WishlistGraphQl/composer.json b/app/code/Magento/WishlistGraphQl/composer.json
index ee08ec077c917..afff7c9efe3c1 100755
--- a/app/code/Magento/WishlistGraphQl/composer.json
+++ b/app/code/Magento/WishlistGraphQl/composer.json
@@ -2,20 +2,21 @@
"name": "magento/module-wishlist-graph-ql",
"description": "N/A",
"type": "magento2-module",
- "require": {
- "php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/module-wishlist": "*",
- "magento/module-store": "*",
- "magento/module-quote-graph-ql": "*",
- "magento/module-quote": "*",
- "magento/module-catalog": "*",
- "magento/module-catalog-graph-ql": "*"
- },
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "version": "100.4.5",
+ "require": {
+ "php": "~7.4.0||~8.1.0",
+ "magento/framework": "103.0.*",
+ "magento/module-wishlist": "101.2.*",
+ "magento/module-store": "101.1.*",
+ "magento/module-quote-graph-ql": "100.4.*",
+ "magento/module-quote": "101.2.*",
+ "magento/module-catalog": "104.0.*",
+ "magento/module-catalog-graph-ql": "100.4.*"
+ },
"autoload": {
"files": [
"registration.php"
@@ -25,3 +26,4 @@
}
}
}
+
diff --git a/app/design/adminhtml/Magento/backend/composer.json b/app/design/adminhtml/Magento/backend/composer.json
index 450d82475e488..d381c41d95942 100644
--- a/app/design/adminhtml/Magento/backend/composer.json
+++ b/app/design/adminhtml/Magento/backend/composer.json
@@ -1,21 +1,23 @@
{
"name": "magento/theme-adminhtml-backend",
"description": "N/A",
+ "type": "magento2-theme",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*"
+ "magento/framework": "103.0.*"
},
- "type": "magento2-theme",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
]
}
}
+
diff --git a/app/design/frontend/Magento/blank/composer.json b/app/design/frontend/Magento/blank/composer.json
index 741f700dfc1e2..1fd5fc17b5df7 100644
--- a/app/design/frontend/Magento/blank/composer.json
+++ b/app/design/frontend/Magento/blank/composer.json
@@ -1,21 +1,23 @@
{
"name": "magento/theme-frontend-blank",
"description": "N/A",
+ "type": "magento2-theme",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*"
+ "magento/framework": "103.0.*"
},
- "type": "magento2-theme",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
]
}
}
+
diff --git a/app/design/frontend/Magento/luma/composer.json b/app/design/frontend/Magento/luma/composer.json
index 34f1ef911a84c..192a0dd65432e 100644
--- a/app/design/frontend/Magento/luma/composer.json
+++ b/app/design/frontend/Magento/luma/composer.json
@@ -1,22 +1,24 @@
{
"name": "magento/theme-frontend-luma",
"description": "N/A",
+ "type": "magento2-theme",
+ "license": [
+ "OSL-3.0",
+ "AFL-3.0"
+ ],
"config": {
"sort-packages": true
},
+ "version": "100.4.5",
"require": {
"php": "~7.4.0||~8.1.0",
- "magento/framework": "*",
- "magento/theme-frontend-blank": "*"
+ "magento/framework": "103.0.*",
+ "magento/theme-frontend-blank": "100.4.*"
},
- "type": "magento2-theme",
- "license": [
- "OSL-3.0",
- "AFL-3.0"
- ],
"autoload": {
"files": [
"registration.php"
]
}
}
+
diff --git a/app/i18n/Magento/de_DE/composer.json b/app/i18n/Magento/de_DE/composer.json
index 5a488a3e32c2b..fd23d037ba459 100644
--- a/app/i18n/Magento/de_DE/composer.json
+++ b/app/i18n/Magento/de_DE/composer.json
@@ -1,6 +1,7 @@
{
"name": "magento/language-de_de",
"description": "German (Germany) language",
+ "type": "magento2-language",
"license": [
"OSL-3.0",
"AFL-3.0"
@@ -8,13 +9,14 @@
"config": {
"sort-packages": true
},
+ "version": "100.4.0",
"require": {
- "magento/framework": "*"
+ "magento/framework": "103.0.*"
},
- "type": "magento2-language",
"autoload": {
"files": [
"registration.php"
]
}
}
+
diff --git a/app/i18n/Magento/en_US/composer.json b/app/i18n/Magento/en_US/composer.json
index 1108c70de28a6..194854d58bbe2 100644
--- a/app/i18n/Magento/en_US/composer.json
+++ b/app/i18n/Magento/en_US/composer.json
@@ -1,6 +1,7 @@
{
"name": "magento/language-en_us",
"description": "English (United States) language",
+ "type": "magento2-language",
"license": [
"OSL-3.0",
"AFL-3.0"
@@ -8,13 +9,14 @@
"config": {
"sort-packages": true
},
+ "version": "100.4.0",
"require": {
- "magento/framework": "*"
+ "magento/framework": "103.0.*"
},
- "type": "magento2-language",
"autoload": {
"files": [
"registration.php"
]
}
}
+
diff --git a/app/i18n/Magento/es_ES/composer.json b/app/i18n/Magento/es_ES/composer.json
index 5bc3cb5730adf..0b49475587d54 100644
--- a/app/i18n/Magento/es_ES/composer.json
+++ b/app/i18n/Magento/es_ES/composer.json
@@ -1,6 +1,7 @@
{
"name": "magento/language-es_es",
"description": "Spanish (Spain) language",
+ "type": "magento2-language",
"license": [
"OSL-3.0",
"AFL-3.0"
@@ -8,13 +9,14 @@
"config": {
"sort-packages": true
},
+ "version": "100.4.0",
"require": {
- "magento/framework": "*"
+ "magento/framework": "103.0.*"
},
- "type": "magento2-language",
"autoload": {
"files": [
"registration.php"
]
}
}
+
diff --git a/app/i18n/Magento/fr_FR/composer.json b/app/i18n/Magento/fr_FR/composer.json
index 50c541308673b..ada414e6a7a32 100644
--- a/app/i18n/Magento/fr_FR/composer.json
+++ b/app/i18n/Magento/fr_FR/composer.json
@@ -1,6 +1,7 @@
{
"name": "magento/language-fr_fr",
"description": "French (France) language",
+ "type": "magento2-language",
"license": [
"OSL-3.0",
"AFL-3.0"
@@ -8,13 +9,14 @@
"config": {
"sort-packages": true
},
+ "version": "100.4.0",
"require": {
- "magento/framework": "*"
+ "magento/framework": "103.0.*"
},
- "type": "magento2-language",
"autoload": {
"files": [
"registration.php"
]
}
}
+
diff --git a/app/i18n/Magento/nl_NL/composer.json b/app/i18n/Magento/nl_NL/composer.json
index a182e179d4103..a881eed112ea0 100644
--- a/app/i18n/Magento/nl_NL/composer.json
+++ b/app/i18n/Magento/nl_NL/composer.json
@@ -1,6 +1,7 @@
{
"name": "magento/language-nl_nl",
"description": "Dutch (Netherlands) language",
+ "type": "magento2-language",
"license": [
"OSL-3.0",
"AFL-3.0"
@@ -8,13 +9,14 @@
"config": {
"sort-packages": true
},
+ "version": "100.4.0",
"require": {
- "magento/framework": "*"
+ "magento/framework": "103.0.*"
},
- "type": "magento2-language",
"autoload": {
"files": [
"registration.php"
]
}
}
+
diff --git a/app/i18n/Magento/pt_BR/composer.json b/app/i18n/Magento/pt_BR/composer.json
index 46734cc09b363..6e10bc16f6a79 100644
--- a/app/i18n/Magento/pt_BR/composer.json
+++ b/app/i18n/Magento/pt_BR/composer.json
@@ -1,6 +1,7 @@
{
"name": "magento/language-pt_br",
"description": "Portuguese (Brazil) language",
+ "type": "magento2-language",
"license": [
"OSL-3.0",
"AFL-3.0"
@@ -8,13 +9,14 @@
"config": {
"sort-packages": true
},
+ "version": "100.4.0",
"require": {
- "magento/framework": "*"
+ "magento/framework": "103.0.*"
},
- "type": "magento2-language",
"autoload": {
"files": [
"registration.php"
]
}
}
+
diff --git a/app/i18n/Magento/zh_Hans_CN/composer.json b/app/i18n/Magento/zh_Hans_CN/composer.json
index ce214ce649f56..8491eced1389f 100644
--- a/app/i18n/Magento/zh_Hans_CN/composer.json
+++ b/app/i18n/Magento/zh_Hans_CN/composer.json
@@ -1,6 +1,7 @@
{
"name": "magento/language-zh_hans_cn",
"description": "Chinese (China) language",
+ "type": "magento2-language",
"license": [
"OSL-3.0",
"AFL-3.0"
@@ -8,13 +9,14 @@
"config": {
"sort-packages": true
},
+ "version": "100.4.0",
"require": {
- "magento/framework": "*"
+ "magento/framework": "103.0.*"
},
- "type": "magento2-language",
"autoload": {
"files": [
"registration.php"
]
}
}
+
diff --git a/composer.json b/composer.json
index 1e6ef148e77a1..aae62064cf947 100644
--- a/composer.json
+++ b/composer.json
@@ -15,6 +15,7 @@
"preferred-install": "dist",
"sort-packages": true
},
+ "version": "2.4.5-p1",
"require": {
"php": "~7.4.0||~8.1.0",
"ext-bcmath": "*",
@@ -80,6 +81,30 @@
"webonyx/graphql-php": "~14.11.6",
"wikimedia/less.php": "^3.0.0"
},
+ "suggest": {
+ "ext-pcntl": "Need for run processes in parallel mode"
+ },
+ "autoload": {
+ "exclude-from-classmap": [
+ "**/dev/**",
+ "**/update/**",
+ "**/Test/**"
+ ],
+ "files": [
+ "app/etc/NonComposerComponentRegistration.php"
+ ],
+ "psr-0": {
+ "": [
+ "app/code/",
+ "generated/code/"
+ ]
+ },
+ "psr-4": {
+ "Magento\\": "app/code/Magento/",
+ "Magento\\Framework\\": "lib/internal/Magento/Framework/",
+ "Magento\\Setup\\": "setup/src/Magento/Setup/"
+ }
+ },
"require-dev": {
"allure-framework/allure-phpunit": "~1.5.0",
"dealerdirect/phpcodesniffer-composer-installer": "^0.7.2",
@@ -95,294 +120,271 @@
"squizlabs/php_codesniffer": "~3.6.0",
"symfony/finder": "^5.2"
},
- "suggest": {
- "ext-pcntl": "Need for run processes in parallel mode"
+ "conflict": {
+ "gene/bluefoot": "*"
},
"replace": {
- "magento/module-marketplace": "*",
- "magento/module-admin-adobe-ims": "*",
- "magento/module-admin-analytics": "*",
- "magento/module-admin-notification": "*",
- "magento/module-adobe-ims": "*",
- "magento/module-adobe-ims-api": "*",
- "magento/module-advanced-pricing-import-export": "*",
- "magento/module-amqp": "*",
- "magento/module-analytics": "*",
- "magento/module-asynchronous-operations": "*",
- "magento/module-authorization": "*",
- "magento/module-advanced-search": "*",
- "magento/module-backend": "*",
- "magento/module-backup": "*",
- "magento/module-bundle": "*",
- "magento/module-bundle-graph-ql": "*",
- "magento/module-bundle-import-export": "*",
- "magento/module-cache-invalidate": "*",
- "magento/module-captcha": "*",
- "magento/module-cardinal-commerce": "*",
- "magento/module-catalog": "*",
- "magento/module-catalog-customer-graph-ql": "*",
- "magento/module-catalog-analytics": "*",
- "magento/module-catalog-import-export": "*",
- "magento/module-catalog-inventory": "*",
- "magento/module-catalog-inventory-graph-ql": "*",
- "magento/module-catalog-rule": "*",
- "magento/module-catalog-rule-graph-ql": "*",
- "magento/module-catalog-rule-configurable": "*",
- "magento/module-catalog-search": "*",
- "magento/module-catalog-url-rewrite": "*",
- "magento/module-catalog-widget": "*",
- "magento/module-checkout": "*",
- "magento/module-checkout-agreements": "*",
- "magento/module-checkout-agreements-graph-ql": "*",
- "magento/module-cms": "*",
- "magento/module-cms-url-rewrite": "*",
- "magento/module-compare-list-graph-ql": "*",
- "magento/module-config": "*",
- "magento/module-configurable-import-export": "*",
- "magento/module-configurable-product": "*",
- "magento/module-configurable-product-sales": "*",
- "magento/module-contact": "*",
- "magento/module-cookie": "*",
- "magento/module-cron": "*",
- "magento/module-currency-symbol": "*",
- "magento/module-customer": "*",
- "magento/module-customer-analytics": "*",
- "magento/module-customer-downloadable-graph-ql": "*",
- "magento/module-customer-import-export": "*",
- "magento/module-deploy": "*",
- "magento/module-developer": "*",
- "magento/module-dhl": "*",
- "magento/module-directory": "*",
- "magento/module-directory-graph-ql": "*",
- "magento/module-downloadable": "*",
- "magento/module-downloadable-graph-ql": "*",
- "magento/module-downloadable-import-export": "*",
- "magento/module-eav": "*",
- "magento/module-elasticsearch": "*",
- "magento/module-elasticsearch-6": "*",
- "magento/module-elasticsearch-7": "*",
- "magento/module-email": "*",
- "magento/module-encryption-key": "*",
- "magento/module-fedex": "*",
- "magento/module-gift-message": "*",
- "magento/module-gift-message-graph-ql": "*",
- "magento/module-google-adwords": "*",
- "magento/module-google-analytics": "*",
- "magento/module-google-optimizer": "*",
- "magento/module-google-gtag": "*",
- "magento/module-graph-ql": "*",
- "magento/module-graph-ql-cache": "*",
- "magento/module-catalog-graph-ql": "*",
- "magento/module-catalog-cms-graph-ql": "*",
- "magento/module-catalog-url-rewrite-graph-ql": "*",
- "magento/module-configurable-product-graph-ql": "*",
- "magento/module-customer-graph-ql": "*",
- "magento/module-eav-graph-ql": "*",
- "magento/module-swatches-graph-ql": "*",
- "magento/module-tax-graph-ql": "*",
- "magento/module-url-rewrite-graph-ql": "*",
- "magento/module-cms-url-rewrite-graph-ql": "*",
- "magento/module-weee-graph-ql": "*",
- "magento/module-cms-graph-ql": "*",
- "magento/module-grouped-import-export": "*",
- "magento/module-grouped-product": "*",
- "magento/module-grouped-catalog-inventory": "*",
- "magento/module-grouped-product-graph-ql": "*",
- "magento/module-import-export": "*",
- "magento/module-indexer": "*",
- "magento/module-instant-purchase": "*",
- "magento/module-integration": "*",
- "magento/module-layered-navigation": "*",
- "magento/module-login-as-customer": "*",
- "magento/module-login-as-customer-admin-ui": "*",
- "magento/module-login-as-customer-api": "*",
- "magento/module-login-as-customer-assistance": "*",
- "magento/module-login-as-customer-frontend-ui": "*",
- "magento/module-login-as-customer-graph-ql": "*",
- "magento/module-login-as-customer-log": "*",
- "magento/module-login-as-customer-quote": "*",
- "magento/module-login-as-customer-page-cache": "*",
- "magento/module-login-as-customer-sales": "*",
- "magento/module-media-content": "*",
- "magento/module-media-content-api": "*",
- "magento/module-media-content-catalog": "*",
- "magento/module-media-content-cms": "*",
- "magento/module-media-gallery": "*",
- "magento/module-media-gallery-api": "*",
- "magento/module-media-gallery-ui": "*",
- "magento/module-media-gallery-ui-api": "*",
- "magento/module-media-gallery-integration": "*",
- "magento/module-media-gallery-synchronization": "*",
- "magento/module-media-gallery-synchronization-api": "*",
- "magento/module-media-content-synchronization": "*",
- "magento/module-media-content-synchronization-api": "*",
- "magento/module-media-content-synchronization-catalog": "*",
- "magento/module-media-content-synchronization-cms": "*",
- "magento/module-media-gallery-synchronization-metadata": "*",
- "magento/module-media-gallery-metadata": "*",
- "magento/module-media-gallery-metadata-api": "*",
- "magento/module-media-gallery-catalog-ui": "*",
- "magento/module-media-gallery-cms-ui": "*",
- "magento/module-media-gallery-catalog-integration": "*",
- "magento/module-media-gallery-catalog": "*",
- "magento/module-media-gallery-renditions": "*",
- "magento/module-media-gallery-renditions-api": "*",
- "magento/module-media-storage": "*",
- "magento/module-message-queue": "*",
- "magento/module-msrp": "*",
- "magento/module-msrp-configurable-product": "*",
- "magento/module-msrp-grouped-product": "*",
- "magento/module-multishipping": "*",
- "magento/module-mysql-mq": "*",
- "magento/module-new-relic-reporting": "*",
- "magento/module-newsletter": "*",
- "magento/module-newsletter-graph-ql": "*",
- "magento/module-offline-payments": "*",
- "magento/module-offline-shipping": "*",
- "magento/module-page-cache": "*",
- "magento/module-payment": "*",
- "magento/module-payment-graph-ql": "*",
- "magento/module-paypal": "*",
- "magento/module-paypal-captcha": "*",
- "magento/module-paypal-graph-ql": "*",
- "magento/module-persistent": "*",
- "magento/module-product-alert": "*",
- "magento/module-product-video": "*",
- "magento/module-quote": "*",
- "magento/module-quote-analytics": "*",
- "magento/module-quote-bundle-options": "*",
- "magento/module-quote-configurable-options": "*",
- "magento/module-quote-downloadable-links": "*",
- "magento/module-quote-graph-ql": "*",
- "magento/module-related-product-graph-ql": "*",
- "magento/module-release-notification": "*",
- "magento/module-reports": "*",
- "magento/module-require-js": "*",
- "magento/module-review": "*",
- "magento/module-review-graph-ql": "*",
- "magento/module-review-analytics": "*",
- "magento/module-robots": "*",
- "magento/module-rss": "*",
- "magento/module-rule": "*",
- "magento/module-sales": "*",
- "magento/module-sales-analytics": "*",
- "magento/module-sales-graph-ql": "*",
- "magento/module-sales-inventory": "*",
- "magento/module-sales-rule": "*",
- "magento/module-sales-sequence": "*",
- "magento/module-sample-data": "*",
- "magento/module-search": "*",
- "magento/module-security": "*",
- "magento/module-send-friend": "*",
- "magento/module-send-friend-graph-ql": "*",
- "magento/module-shipping": "*",
- "magento/module-sitemap": "*",
- "magento/module-store": "*",
- "magento/module-store-graph-ql": "*",
- "magento/module-swagger": "*",
- "magento/module-swagger-webapi": "*",
- "magento/module-swagger-webapi-async": "*",
- "magento/module-swatches": "*",
- "magento/module-swatches-layered-navigation": "*",
- "magento/module-tax": "*",
- "magento/module-tax-import-export": "*",
- "magento/module-theme": "*",
- "magento/module-theme-graph-ql": "*",
- "magento/module-translation": "*",
- "magento/module-ui": "*",
- "magento/module-ups": "*",
- "magento/module-url-rewrite": "*",
- "magento/module-user": "*",
- "magento/module-usps": "*",
- "magento/module-variable": "*",
- "magento/module-vault": "*",
- "magento/module-vault-graph-ql": "*",
- "magento/module-version": "*",
- "magento/module-webapi": "*",
- "magento/module-webapi-async": "*",
- "magento/module-webapi-security": "*",
- "magento/module-weee": "*",
- "magento/module-widget": "*",
- "magento/module-wishlist": "*",
- "magento/module-wishlist-graph-ql": "*",
- "magento/module-wishlist-analytics": "*",
- "magento/theme-adminhtml-backend": "*",
- "magento/theme-frontend-blank": "*",
- "magento/theme-frontend-luma": "*",
- "magento/language-de_de": "*",
- "magento/language-en_us": "*",
- "magento/language-es_es": "*",
- "magento/language-fr_fr": "*",
- "magento/language-nl_nl": "*",
- "magento/language-pt_br": "*",
- "magento/language-zh_hans_cn": "*",
- "magento/framework": "*",
- "magento/framework-amqp": "*",
- "magento/framework-bulk": "*",
- "magento/framework-message-queue": "*",
+ "magento/module-marketplace": "100.4.3",
+ "magento/module-admin-adobe-ims": "100.4.0",
+ "magento/module-admin-analytics": "100.4.4",
+ "magento/module-admin-notification": "100.4.4",
+ "magento/module-adobe-ims": "2.1.4",
+ "magento/module-adobe-ims-api": "2.1.2",
+ "magento/module-advanced-pricing-import-export": "100.4.5",
+ "magento/module-amqp": "100.4.2",
+ "magento/module-analytics": "100.4.5",
+ "magento/module-asynchronous-operations": "100.4.5",
+ "magento/module-authorization": "100.4.5",
+ "magento/module-advanced-search": "100.4.3",
+ "magento/module-backend": "102.0.5",
+ "magento/module-backup": "100.4.5",
+ "magento/module-bundle": "101.0.5",
+ "magento/module-bundle-graph-ql": "100.4.5",
+ "magento/module-bundle-import-export": "100.4.4",
+ "magento/module-cache-invalidate": "100.4.3",
+ "magento/module-captcha": "100.4.5",
+ "magento/module-cardinal-commerce": "100.4.3",
+ "magento/module-catalog": "104.0.5-p1",
+ "magento/module-catalog-customer-graph-ql": "100.4.4",
+ "magento/module-catalog-analytics": "100.4.2",
+ "magento/module-catalog-import-export": "101.1.5",
+ "magento/module-catalog-inventory": "100.4.5",
+ "magento/module-catalog-inventory-graph-ql": "100.4.2",
+ "magento/module-catalog-rule": "101.2.5",
+ "magento/module-catalog-rule-graph-ql": "100.4.2",
+ "magento/module-catalog-rule-configurable": "100.4.4",
+ "magento/module-catalog-search": "102.0.5",
+ "magento/module-catalog-url-rewrite": "100.4.5",
+ "magento/module-catalog-widget": "100.4.5-p1",
+ "magento/module-checkout": "100.4.5",
+ "magento/module-checkout-agreements": "100.4.4",
+ "magento/module-checkout-agreements-graph-ql": "100.4.1",
+ "magento/module-cms": "104.0.5-p1",
+ "magento/module-cms-url-rewrite": "100.4.4",
+ "magento/module-compare-list-graph-ql": "100.4.1",
+ "magento/module-config": "101.2.5",
+ "magento/module-configurable-import-export": "100.4.3",
+ "magento/module-configurable-product": "100.4.5-p1",
+ "magento/module-configurable-product-sales": "100.4.2",
+ "magento/module-contact": "100.4.4",
+ "magento/module-cookie": "100.4.5",
+ "magento/module-cron": "100.4.5",
+ "magento/module-currency-symbol": "100.4.3",
+ "magento/module-customer": "103.0.5-p1",
+ "magento/module-customer-analytics": "100.4.2",
+ "magento/module-customer-downloadable-graph-ql": "100.4.1",
+ "magento/module-customer-import-export": "100.4.5",
+ "magento/module-deploy": "100.4.5",
+ "magento/module-developer": "100.4.5",
+ "magento/module-dhl": "100.4.4",
+ "magento/module-directory": "100.4.5",
+ "magento/module-directory-graph-ql": "100.4.3",
+ "magento/module-downloadable": "100.4.5",
+ "magento/module-downloadable-graph-ql": "100.4.5",
+ "magento/module-downloadable-import-export": "100.4.4",
+ "magento/module-eav": "102.1.5",
+ "magento/module-elasticsearch": "101.0.5",
+ "magento/module-elasticsearch-6": "100.4.5",
+ "magento/module-elasticsearch-7": "100.4.5",
+ "magento/module-email": "101.1.5",
+ "magento/module-encryption-key": "100.4.3",
+ "magento/module-fedex": "100.4.3",
+ "magento/module-gift-message": "100.4.4",
+ "magento/module-gift-message-graph-ql": "100.4.3",
+ "magento/module-google-adwords": "100.4.2",
+ "magento/module-google-analytics": "100.4.1",
+ "magento/module-google-optimizer": "100.4.4",
+ "magento/module-google-gtag": "100.4.0",
+ "magento/module-graph-ql": "100.4.5",
+ "magento/module-graph-ql-cache": "100.4.2",
+ "magento/module-catalog-graph-ql": "100.4.5",
+ "magento/module-catalog-cms-graph-ql": "100.4.1",
+ "magento/module-catalog-url-rewrite-graph-ql": "100.4.3",
+ "magento/module-configurable-product-graph-ql": "100.4.5",
+ "magento/module-customer-graph-ql": "100.4.5",
+ "magento/module-eav-graph-ql": "100.4.2",
+ "magento/module-swatches-graph-ql": "100.4.3",
+ "magento/module-tax-graph-ql": "100.4.1",
+ "magento/module-url-rewrite-graph-ql": "100.4.4",
+ "magento/module-cms-url-rewrite-graph-ql": "100.4.3",
+ "magento/module-weee-graph-ql": "100.4.2",
+ "magento/module-cms-graph-ql": "100.4.2",
+ "magento/module-grouped-import-export": "100.4.3",
+ "magento/module-grouped-product": "100.4.5",
+ "magento/module-grouped-catalog-inventory": "100.4.2",
+ "magento/module-grouped-product-graph-ql": "100.4.5",
+ "magento/module-import-export": "101.0.5",
+ "magento/module-indexer": "100.4.5",
+ "magento/module-instant-purchase": "100.4.4",
+ "magento/module-integration": "100.4.5",
+ "magento/module-layered-navigation": "100.4.5",
+ "magento/module-login-as-customer": "100.4.5",
+ "magento/module-login-as-customer-admin-ui": "100.4.5",
+ "magento/module-login-as-customer-api": "100.4.4",
+ "magento/module-login-as-customer-assistance": "100.4.4",
+ "magento/module-login-as-customer-frontend-ui": "100.4.4",
+ "magento/module-login-as-customer-graph-ql": "100.4.2",
+ "magento/module-login-as-customer-log": "100.4.3",
+ "magento/module-login-as-customer-quote": "100.4.3",
+ "magento/module-login-as-customer-page-cache": "100.4.4",
+ "magento/module-login-as-customer-sales": "100.4.4",
+ "magento/module-media-content": "100.4.3",
+ "magento/module-media-content-api": "100.4.4",
+ "magento/module-media-content-catalog": "100.4.3",
+ "magento/module-media-content-cms": "100.4.3",
+ "magento/module-media-gallery": "100.4.4",
+ "magento/module-media-gallery-api": "101.0.4",
+ "magento/module-media-gallery-ui": "100.4.4",
+ "magento/module-media-gallery-ui-api": "100.4.3",
+ "magento/module-media-gallery-integration": "100.4.4",
+ "magento/module-media-gallery-synchronization": "100.4.4",
+ "magento/module-media-gallery-synchronization-api": "100.4.3",
+ "magento/module-media-content-synchronization": "100.4.4",
+ "magento/module-media-content-synchronization-api": "100.4.3",
+ "magento/module-media-content-synchronization-catalog": "100.4.2",
+ "magento/module-media-content-synchronization-cms": "100.4.2",
+ "magento/module-media-gallery-synchronization-metadata": "100.4.1",
+ "magento/module-media-gallery-metadata": "100.4.3",
+ "magento/module-media-gallery-metadata-api": "100.4.2",
+ "magento/module-media-gallery-catalog-ui": "100.4.2",
+ "magento/module-media-gallery-cms-ui": "100.4.2",
+ "magento/module-media-gallery-catalog-integration": "100.4.2",
+ "magento/module-media-gallery-catalog": "100.4.2",
+ "magento/module-media-gallery-renditions": "100.4.3",
+ "magento/module-media-gallery-renditions-api": "100.4.2",
+ "magento/module-media-storage": "100.4.4",
+ "magento/module-message-queue": "100.4.5",
+ "magento/module-msrp": "100.4.4",
+ "magento/module-msrp-configurable-product": "100.4.2",
+ "magento/module-msrp-grouped-product": "100.4.2",
+ "magento/module-multishipping": "100.4.5",
+ "magento/module-mysql-mq": "100.4.3",
+ "magento/module-new-relic-reporting": "100.4.3",
+ "magento/module-newsletter": "100.4.5",
+ "magento/module-newsletter-graph-ql": "100.4.2",
+ "magento/module-offline-payments": "100.4.3",
+ "magento/module-offline-shipping": "100.4.4",
+ "magento/module-page-cache": "100.4.5",
+ "magento/module-payment": "100.4.5",
+ "magento/module-payment-graph-ql": "100.4.0",
+ "magento/module-paypal": "101.0.5",
+ "magento/module-paypal-captcha": "100.4.2",
+ "magento/module-paypal-graph-ql": "100.4.3",
+ "magento/module-persistent": "100.4.5",
+ "magento/module-product-alert": "100.4.4",
+ "magento/module-product-video": "100.4.5",
+ "magento/module-quote": "101.2.5",
+ "magento/module-quote-analytics": "100.4.4",
+ "magento/module-quote-bundle-options": "100.4.1",
+ "magento/module-quote-configurable-options": "100.4.1",
+ "magento/module-quote-downloadable-links": "100.4.1",
+ "magento/module-quote-graph-ql": "100.4.5",
+ "magento/module-related-product-graph-ql": "100.4.2",
+ "magento/module-release-notification": "100.4.3",
+ "magento/module-reports": "100.4.5",
+ "magento/module-require-js": "100.4.1",
+ "magento/module-review": "100.4.5",
+ "magento/module-review-graph-ql": "100.4.1",
+ "magento/module-review-analytics": "100.4.2",
+ "magento/module-robots": "101.1.1",
+ "magento/module-rss": "100.4.3",
+ "magento/module-rule": "100.4.4",
+ "magento/module-sales": "103.0.5-p1",
+ "magento/module-sales-analytics": "100.4.2",
+ "magento/module-sales-graph-ql": "100.4.5",
+ "magento/module-sales-inventory": "100.4.2",
+ "magento/module-sales-rule": "101.2.5",
+ "magento/module-sales-sequence": "100.4.2",
+ "magento/module-sample-data": "100.4.3",
+ "magento/module-search": "101.1.5",
+ "magento/module-security": "100.4.5",
+ "magento/module-send-friend": "100.4.3",
+ "magento/module-send-friend-graph-ql": "100.4.1",
+ "magento/module-shipping": "100.4.5",
+ "magento/module-sitemap": "100.4.4",
+ "magento/module-store": "101.1.5",
+ "magento/module-store-graph-ql": "100.4.3",
+ "magento/module-swagger": "100.4.4",
+ "magento/module-swagger-webapi": "100.4.1",
+ "magento/module-swagger-webapi-async": "100.4.1",
+ "magento/module-swatches": "100.4.5-p1",
+ "magento/module-swatches-layered-navigation": "100.4.1",
+ "magento/module-tax": "100.4.5",
+ "magento/module-tax-import-export": "100.4.4",
+ "magento/module-theme": "101.1.5",
+ "magento/module-theme-graph-ql": "100.4.2",
+ "magento/module-translation": "100.4.5",
+ "magento/module-ui": "101.2.5",
+ "magento/module-ups": "100.4.5",
+ "magento/module-url-rewrite": "102.0.4",
+ "magento/module-user": "101.2.5",
+ "magento/module-usps": "100.4.4",
+ "magento/module-variable": "100.4.3",
+ "magento/module-vault": "101.2.5",
+ "magento/module-vault-graph-ql": "100.4.1",
+ "magento/module-version": "100.4.2",
+ "magento/module-webapi": "100.4.4",
+ "magento/module-webapi-async": "100.4.3",
+ "magento/module-webapi-security": "100.4.2",
+ "magento/module-weee": "100.4.5",
+ "magento/module-widget": "101.2.5",
+ "magento/module-wishlist": "101.2.5",
+ "magento/module-wishlist-graph-ql": "100.4.5",
+ "magento/module-wishlist-analytics": "100.4.3",
+ "magento/theme-adminhtml-backend": "100.4.5",
+ "magento/theme-frontend-blank": "100.4.5",
+ "magento/theme-frontend-luma": "100.4.5",
+ "magento/language-de_de": "100.4.0",
+ "magento/language-en_us": "100.4.0",
+ "magento/language-es_es": "100.4.0",
+ "magento/language-fr_fr": "100.4.0",
+ "magento/language-nl_nl": "100.4.0",
+ "magento/language-pt_br": "100.4.0",
+ "magento/language-zh_hans_cn": "100.4.0",
+ "magento/framework": "103.0.5-p1",
+ "magento/framework-amqp": "100.4.3",
+ "magento/framework-bulk": "101.0.1",
+ "magento/framework-message-queue": "100.4.5",
"trentrichardson/jquery-timepicker-addon": "1.4.3",
"components/jquery": "1.11.0",
"blueimp/jquery-file-upload": "5.6.14",
"components/jqueryui": "1.10.4",
"twbs/bootstrap": "3.1.0",
"tinymce/tinymce": "3.4.7",
- "magento/module-csp": "*",
- "magento/module-aws-s3": "*",
- "magento/module-remote-storage": "*",
- "magento/module-jwt-framework-adapter": "*",
- "magento/module-jwt-user-token": "*"
+ "magento/module-csp": "100.4.4",
+ "magento/module-aws-s3": "100.4.3",
+ "magento/module-remote-storage": "100.4.3",
+ "magento/module-jwt-framework-adapter": "100.4.1",
+ "magento/module-jwt-user-token": "100.4.0"
},
- "conflict": {
- "gene/bluefoot": "*"
+ "autoload-dev": {
+ "psr-4": {
+ "Magento\\PhpStan\\": "dev/tests/static/framework/Magento/PhpStan/",
+ "Magento\\Sniffs\\": "dev/tests/static/framework/Magento/Sniffs/",
+ "Magento\\TestFramework\\Inspection\\": "dev/tests/static/framework/Magento/TestFramework/Inspection/",
+ "Magento\\TestFramework\\Utility\\": "dev/tests/static/framework/Magento/TestFramework/Utility/",
+ "Magento\\Tools\\": "dev/tools/Magento/Tools/",
+ "Magento\\Tools\\Sanity\\": "dev/build/publication/sanity/Magento/Tools/Sanity/"
+ }
},
+ "prefer-stable": true,
"extra": {
"component_paths": {
- "trentrichardson/jquery-timepicker-addon": "lib/web/jquery/jquery-ui-timepicker-addon.js",
+ "blueimp/jquery-file-upload": "lib/web/jquery/fileUploader",
"components/jquery": [
"lib/web/jquery.js",
"lib/web/jquery/jquery.min.js",
"lib/web/jquery/jquery-migrate.js"
],
- "blueimp/jquery-file-upload": "lib/web/jquery/fileUploader",
"components/jqueryui": [
"lib/web/jquery/jquery-ui.js"
],
+ "tinymce/tinymce": "lib/web/tiny_mce_5",
+ "trentrichardson/jquery-timepicker-addon": "lib/web/jquery/jquery-ui-timepicker-addon.js",
"twbs/bootstrap": [
"lib/web/jquery/jquery.tabs.js"
- ],
- "tinymce/tinymce": "lib/web/tiny_mce_5"
- }
- },
- "autoload": {
- "psr-4": {
- "Magento\\Framework\\": "lib/internal/Magento/Framework/",
- "Magento\\Setup\\": "setup/src/Magento/Setup/",
- "Magento\\": "app/code/Magento/"
- },
- "psr-0": {
- "": [
- "app/code/",
- "generated/code/"
]
- },
- "files": [
- "app/etc/NonComposerComponentRegistration.php"
- ],
- "exclude-from-classmap": [
- "**/dev/**",
- "**/update/**",
- "**/Test/**"
- ]
- },
- "autoload-dev": {
- "psr-4": {
- "Magento\\Sniffs\\": "dev/tests/static/framework/Magento/Sniffs/",
- "Magento\\Tools\\": "dev/tools/Magento/Tools/",
- "Magento\\Tools\\Sanity\\": "dev/build/publication/sanity/Magento/Tools/Sanity/",
- "Magento\\TestFramework\\Inspection\\": "dev/tests/static/framework/Magento/TestFramework/Inspection/",
- "Magento\\TestFramework\\Utility\\": "dev/tests/static/framework/Magento/TestFramework/Utility/",
- "Magento\\PhpStan\\": "dev/tests/static/framework/Magento/PhpStan/"
}
- },
- "prefer-stable": true
+ }
}
+
diff --git a/dev/tests/integration/testsuite/Magento/Customer/Model/AccountManagementTest.php b/dev/tests/integration/testsuite/Magento/Customer/Model/AccountManagementTest.php
index de4a592f46c9e..7f25930c36ce0 100644
--- a/dev/tests/integration/testsuite/Magento/Customer/Model/AccountManagementTest.php
+++ b/dev/tests/integration/testsuite/Magento/Customer/Model/AccountManagementTest.php
@@ -331,7 +331,7 @@ public function testValidateResetPasswordLinkTokenExpired()
public function testValidateResetPasswordLinkTokenInvalid()
{
$resetToken = 'lsdj579slkj5987slkj595lkj';
- $invalidToken = 0;
+ $invalidToken = '0';
$this->setResetPasswordData($resetToken, 'Y-m-d H:i:s');
try {
$this->accountManagement->validateResetPasswordLinkToken(1, $invalidToken);
@@ -481,7 +481,7 @@ public function testResetPasswordTokenExpired()
public function testResetPasswordTokenInvalid()
{
$resetToken = 'lsdj579slkj5987slkj595lkj';
- $invalidToken = 0;
+ $invalidToken = '0';
$password = 'new_Password123';
$this->setResetPasswordData($resetToken, 'Y-m-d H:i:s');
diff --git a/lib/internal/Magento/Framework/Amqp/composer.json b/lib/internal/Magento/Framework/Amqp/composer.json
index 701f2df167065..038d0ff3bd8f8 100644
--- a/lib/internal/Magento/Framework/Amqp/composer.json
+++ b/lib/internal/Magento/Framework/Amqp/composer.json
@@ -1,25 +1,27 @@
{
"name": "magento/framework-amqp",
"description": "N/A",
- "config": {
- "sort-packages": true
- },
"type": "magento2-library",
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "config": {
+ "sort-packages": true
+ },
+ "version": "100.4.3",
"require": {
- "magento/framework": "*",
+ "magento/framework": "103.0.*",
"php": "~7.4.0||~8.1.0",
"php-amqplib/php-amqplib": "~3.2.0"
},
"autoload": {
- "psr-4": {
- "Magento\\Framework\\Amqp\\": ""
- },
"files": [
"registration.php"
- ]
+ ],
+ "psr-4": {
+ "Magento\\Framework\\Amqp\\": ""
+ }
}
}
+
diff --git a/lib/internal/Magento/Framework/Bulk/composer.json b/lib/internal/Magento/Framework/Bulk/composer.json
index 7733ce9fea4c6..0e601aac8ade9 100644
--- a/lib/internal/Magento/Framework/Bulk/composer.json
+++ b/lib/internal/Magento/Framework/Bulk/composer.json
@@ -1,24 +1,26 @@
{
"name": "magento/framework-bulk",
"description": "N/A",
- "config": {
- "sort-packages": true
- },
"type": "magento2-library",
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "config": {
+ "sort-packages": true
+ },
+ "version": "101.0.1",
"require": {
- "magento/framework": "*",
+ "magento/framework": "103.0.*",
"php": "~7.4.0||~8.1.0"
},
"autoload": {
- "psr-4": {
- "Magento\\Framework\\Bulk\\": ""
- },
"files": [
"registration.php"
- ]
+ ],
+ "psr-4": {
+ "Magento\\Framework\\Bulk\\": ""
+ }
}
}
+
diff --git a/lib/internal/Magento/Framework/Filter/Template.php b/lib/internal/Magento/Framework/Filter/Template.php
index 46d30a5538e3c..cabb3264cbfd1 100644
--- a/lib/internal/Magento/Framework/Filter/Template.php
+++ b/lib/internal/Magento/Framework/Filter/Template.php
@@ -18,6 +18,8 @@
use Magento\Framework\Filter\DirectiveProcessor\TemplateDirective;
use Magento\Framework\Filter\DirectiveProcessor\VarDirective;
use Magento\Framework\Stdlib\StringUtils;
+use Magento\Framework\Filter\Template\SignatureProvider;
+use Magento\Framework\Filter\Template\FilteringDepthMeter;
/**
* Template filter
@@ -100,17 +102,31 @@ class Template implements \Zend_Filter_Interface
*/
private $variableResolver;
+ /**
+ * @var SignatureProvider|null
+ */
+ private $signatureProvider;
+
+ /**
+ * @var FilteringDepthMeter|null
+ */
+ private $filteringDepthMeter;
+
/**
* @param StringUtils $string
* @param array $variables
* @param DirectiveProcessorInterface[] $directiveProcessors
* @param VariableResolverInterface|null $variableResolver
+ * @param SignatureProvider|null $signatureProvider
+ * @param FilteringDepthMeter|null $filteringDepthMeter
*/
public function __construct(
StringUtils $string,
$variables = [],
$directiveProcessors = [],
- VariableResolverInterface $variableResolver = null
+ VariableResolverInterface $variableResolver = null,
+ SignatureProvider $signatureProvider = null,
+ FilteringDepthMeter $filteringDepthMeter = null
) {
$this->string = $string;
$this->setVariables($variables);
@@ -118,6 +134,12 @@ public function __construct(
$this->variableResolver = $variableResolver ?? ObjectManager::getInstance()
->get(VariableResolverInterface::class);
+ $this->signatureProvider = $signatureProvider ?? ObjectManager::getInstance()
+ ->get(SignatureProvider::class);
+
+ $this->filteringDepthMeter = $filteringDepthMeter ?? ObjectManager::getInstance()
+ ->get(FilteringDepthMeter::class);
+
if (empty($directiveProcessors)) {
$this->directiveProcessors = [
'depend' => ObjectManager::getInstance()->get(DependDirective::class),
@@ -180,6 +202,60 @@ public function filter($value)
)->render());
}
+ $this->filteringDepthMeter->descend();
+
+ // Processing of template directives.
+ $templateDirectivesResults = $this->processDirectives($value);
+
+ foreach ($templateDirectivesResults as $result) {
+ $value = str_replace($result['directive'], $result['output'], $value);
+ }
+
+ // Processing of deferred directives received from child templates
+ // or nested directives.
+ $deferredDirectivesResults = $this->processDirectives($value, true);
+
+ foreach ($deferredDirectivesResults as $result) {
+ $value = str_replace($result['directive'], $result['output'], $value);
+ }
+
+ if ($this->filteringDepthMeter->showMark() > 1) {
+ // Signing own deferred directives (if any).
+ $signature = $this->signatureProvider->get();
+
+ foreach ($templateDirectivesResults as $result) {
+ if ($result['directive'] === $result['output']) {
+ $value = str_replace(
+ $result['output'],
+ $signature . $result['output'] . $signature,
+ $value
+ );
+ }
+ }
+ }
+
+ $value = $this->afterFilter($value);
+
+ $this->filteringDepthMeter->ascend();
+
+ return $value;
+ }
+
+ /**
+ * Processes template directives and returns an array that contains results produced by each directive.
+ *
+ * @param string $value
+ * @param bool $isSigned
+ *
+ * @return array
+ *
+ * @throws InvalidArgumentException
+ * @throws \Magento\Framework\Exception\LocalizedException
+ */
+ private function processDirectives($value, $isSigned = false): array
+ {
+ $results = [];
+
foreach ($this->directiveProcessors as $directiveProcessor) {
if (!$directiveProcessor instanceof DirectiveProcessorInterface) {
throw new InvalidArgumentException(
@@ -187,15 +263,57 @@ public function filter($value)
);
}
- if (preg_match_all($directiveProcessor->getRegularExpression(), $value, $constructions, PREG_SET_ORDER)) {
+ $pattern = $directiveProcessor->getRegularExpression();
+
+ if ($isSigned) {
+ $pattern = $this->embedSignatureIntoPattern($pattern);
+ }
+
+ if (preg_match_all($pattern, $value, $constructions, PREG_SET_ORDER)) {
foreach ($constructions as $construction) {
$replacedValue = $directiveProcessor->process($construction, $this, $this->templateVars);
- $value = str_replace($construction[0], $replacedValue, $value);
+
+ $results[] = [
+ 'directive' => $construction[0],
+ 'output' => $replacedValue
+ ];
}
}
}
- return $this->afterFilter($value);
+ return $results;
+ }
+
+ /**
+ * Modifies given regular expression pattern to be able to recognize signed directives.
+ *
+ * @param string $pattern
+ *
+ * @return string
+ *
+ * @throws \Magento\Framework\Exception\LocalizedException
+ */
+ private function embedSignatureIntoPattern(string $pattern): string
+ {
+ $signature = $this->signatureProvider->get();
+
+ $closingDelimiters = [
+ '(' => ')',
+ '{' => '}',
+ '[' => ']',
+ '<' => '>'
+ ];
+
+ $closingDelimiter = $openingDelimiter = substr(trim($pattern), 0, 1);
+
+ if (array_key_exists($openingDelimiter, $closingDelimiters)) {
+ $closingDelimiter = $closingDelimiters[$openingDelimiter];
+ }
+
+ $pattern = substr_replace($pattern, $signature, strpos($pattern, $openingDelimiter) + 1, 0);
+ $pattern = substr_replace($pattern, $signature, strrpos($pattern, $closingDelimiter), 0);
+
+ return $pattern;
}
/**
@@ -251,6 +369,7 @@ protected function resetAfterFilterCallbacks()
* @param string[] $construction
* @return string
* @deprecated 102.0.4 Use the directive interfaces instead
+ * @see \Magento\Framework\Filter\DirectiveProcessorInterface
*/
public function varDirective($construction)
{
@@ -266,6 +385,7 @@ public function varDirective($construction)
* @param string[] $construction
* @return string
* @deprecated 102.0.4 Use the directive interfaces instead
+ * @see \Magento\Framework\Filter\DirectiveProcessorInterface
* @since 102.0.4
*/
public function forDirective($construction)
@@ -291,6 +411,7 @@ public function forDirective($construction)
* @param string[] $construction
* @return mixed
* @deprecated 102.0.4 Use the directive interfaces instead
+ * @see \Magento\Framework\Filter\DirectiveProcessorInterface
*/
public function templateDirective($construction)
{
@@ -306,6 +427,7 @@ public function templateDirective($construction)
* @param string[] $construction
* @return string
* @deprecated 102.0.4 Use the directive interfaces instead
+ * @see \Magento\Framework\Filter\DirectiveProcessorInterface
*/
public function dependDirective($construction)
{
@@ -323,6 +445,7 @@ public function dependDirective($construction)
* @param string[] $construction
* @return string
* @deprecated 102.0.4 Use the directive interfaces instead
+ * @see \Magento\Framework\Filter\DirectiveProcessorInterface
*/
public function ifDirective($construction)
{
@@ -340,6 +463,7 @@ public function ifDirective($construction)
* @param string $value raw parameters
* @return array
* @deprecated 102.0.4 Use the directive interfaces instead
+ * @see \Magento\Framework\Filter\DirectiveProcessorInterface
*/
protected function getParameters($value)
{
@@ -361,6 +485,7 @@ protected function getParameters($value)
* @param string $default default value
* @return string
* @deprecated 102.0.4 Use \Magento\Framework\Filter\VariableResolverInterface instead
+ * @see \Magento\Framework\Filter\VariableResolverInterface
*/
protected function getVariable($value, $default = '{no_value_defined}')
{
@@ -377,6 +502,7 @@ protected function getVariable($value, $default = '{no_value_defined}')
* @param array $stack
* @return array
* @deprecated 102.0.4 Use new directive processor interfaces
+ * @see \Magento\Framework\Filter\DirectiveProcessorInterface
*/
protected function getStackArgs($stack)
{
@@ -405,6 +531,7 @@ protected function getStackArgs($stack)
* @return bool The previous mode from before the change
* @since 102.0.4
* @deprecated The method is not in use anymore.
+ * @see https://developer.adobe.com/commerce/frontend-core/guide/templates/email-migration/#remove-the-legacy-variable-resolver
*/
public function setStrictMode(bool $strictMode): bool
{
@@ -420,6 +547,7 @@ public function setStrictMode(bool $strictMode): bool
* @return bool
* @since 102.0.4
* @deprecated The method is not in use anymore.
+ * @see https://developer.adobe.com/commerce/frontend-core/guide/templates/email-migration/#remove-the-legacy-variable-resolver
*/
public function isStrictMode(): bool
{
diff --git a/lib/internal/Magento/Framework/Filter/Template/FilteringDepthMeter.php b/lib/internal/Magento/Framework/Filter/Template/FilteringDepthMeter.php
new file mode 100644
index 0000000000000..57257325be797
--- /dev/null
+++ b/lib/internal/Magento/Framework/Filter/Template/FilteringDepthMeter.php
@@ -0,0 +1,52 @@
+depth++;
+ }
+
+ /**
+ * Decreases filtering depth.
+ *
+ * @return void
+ */
+ public function ascend()
+ {
+ $this->depth--;
+ }
+
+ /**
+ * Shows current filtering depth.
+ *
+ * @return int
+ */
+ public function showMark(): int
+ {
+ return $this->depth;
+ }
+}
diff --git a/lib/internal/Magento/Framework/Filter/Template/SignatureProvider.php b/lib/internal/Magento/Framework/Filter/Template/SignatureProvider.php
new file mode 100644
index 0000000000000..3e476f3e5d79e
--- /dev/null
+++ b/lib/internal/Magento/Framework/Filter/Template/SignatureProvider.php
@@ -0,0 +1,53 @@
+random = $random;
+ }
+
+ /**
+ * Generates a random string which will be used as a signature during runtime.
+ *
+ * @return string
+ *
+ * @throws \Magento\Framework\Exception\LocalizedException
+ */
+ public function get(): string
+ {
+ if ($this->signature === null) {
+ $this->signature = $this->random->getRandomString(32);
+ }
+
+ return $this->signature;
+ }
+}
diff --git a/lib/internal/Magento/Framework/Filter/Test/Unit/Template/SignatureProviderTest.php b/lib/internal/Magento/Framework/Filter/Test/Unit/Template/SignatureProviderTest.php
new file mode 100644
index 0000000000000..3cf685dc1ffd7
--- /dev/null
+++ b/lib/internal/Magento/Framework/Filter/Test/Unit/Template/SignatureProviderTest.php
@@ -0,0 +1,50 @@
+random = $this->createPartialMock(
+ \Magento\Framework\Math\Random::class,
+ ['getRandomString']
+ );
+
+ $this->signatureProvider = new \Magento\Framework\Filter\Template\SignatureProvider(
+ $this->random
+ );
+ }
+
+ public function testGet()
+ {
+ $expectedResult = 'Z0FFbeCU2R8bsVGJuTdkXyiiZBzsaceV';
+
+ $this->random->expects($this->once())
+ ->method('getRandomString')
+ ->with(32)
+ ->willReturn($expectedResult);
+
+ $this->assertEquals($expectedResult, $this->signatureProvider->get());
+
+ $this->random->expects($this->never())
+ ->method('getRandomString');
+
+ $this->assertEquals($expectedResult, $this->signatureProvider->get());
+ }
+}
diff --git a/lib/internal/Magento/Framework/Filter/Test/Unit/TemplateTest.php b/lib/internal/Magento/Framework/Filter/Test/Unit/TemplateTest.php
index 973f7ac1d268f..dffb22c2b776f 100644
--- a/lib/internal/Magento/Framework/Filter/Test/Unit/TemplateTest.php
+++ b/lib/internal/Magento/Framework/Filter/Test/Unit/TemplateTest.php
@@ -28,11 +28,43 @@ class TemplateTest extends TestCase
*/
private $store;
+ /**
+ * @var \Magento\Framework\Filter\Template\SignatureProvider|\PHPUnit\Framework\MockObject\MockObject
+ */
+ protected $signatureProvider;
+
+ /**
+ * @var \Magento\Framework\Filter\Template\FilteringDepthMeter|\PHPUnit\Framework\MockObject\MockObject
+ */
+ protected $filteringDepthMeter;
+
protected function setUp(): void
{
$objectManager = new ObjectManager($this);
- $this->templateFilter = $objectManager->getObject(Template::class);
+
$this->store = $objectManager->getObject(Store::class);
+
+ $this->signatureProvider = $this->createPartialMock(
+ \Magento\Framework\Filter\Template\SignatureProvider::class,
+ ['get']
+ );
+
+ $this->signatureProvider->expects($this->any())
+ ->method('get')
+ ->willReturn('Z0FFbeCU2R8bsVGJuTdkXyiiZBzsaceV');
+
+ $this->filteringDepthMeter = $this->createPartialMock(
+ \Magento\Framework\Filter\Template\FilteringDepthMeter::class,
+ ['showMark']
+ );
+
+ $this->templateFilter = $objectManager->getObject(
+ \Magento\Framework\Filter\Template::class,
+ [
+ 'signatureProvider' => $this->signatureProvider,
+ 'filteringDepthMeter' => $this->filteringDepthMeter
+ ]
+ );
}
/**
@@ -44,6 +76,10 @@ public function testAfterFilter()
$value = 'test string';
$expectedResult = 'TEST STRING';
+ $this->filteringDepthMeter->expects($this->any())
+ ->method('showMark')
+ ->willReturn(1);
+
// Build arbitrary object to pass into the addAfterFilterCallback method
$callbackObject = $this->getMockBuilder('stdObject')
->setMethods(['afterFilterCallbackMethod'])
@@ -72,6 +108,10 @@ public function testAfterFilterCallbackReset()
$value = 'test string';
$expectedResult = 'TEST STRING';
+ $this->filteringDepthMeter->expects($this->any())
+ ->method('showMark')
+ ->willReturn(1);
+
// Build arbitrary object to pass into the addAfterFilterCallback method
$callbackObject = $this->getMockBuilder('stdObject')
->setMethods(['afterFilterCallbackMethod'])
@@ -127,7 +167,7 @@ public function getTemplateAndExpectedResults($type)
{{for in order.all_visible_items}}
-
- name: , lastname: , age:
+ name: , lastname: , age:
{{/for}}
@@ -137,14 +177,14 @@ public function getTemplateAndExpectedResults($type)
$template = <<
{{for in order.all_visible_items}}
-
+
{{/for}}
TEMPLATE;
$expected = <<
{{for in order.all_visible_items}}
-
+
{{/for}}
TEMPLATE;
@@ -153,14 +193,14 @@ public function getTemplateAndExpectedResults($type)
$template = <<
{{for in }}
-
+
{{/for}}
TEMPLATE;
$expected = <<
{{for in }}
-
+
{{/for}}
TEMPLATE;
@@ -178,17 +218,17 @@ public function getTemplateAndExpectedResults($type)
TEMPLATE;
$expected = <<
-
+
index: 0 sku: ABC123
name: Product ABC price: 123 quantity: 2
-
+
index: 1 sku: DOREMI
name: Product DOREMI price: 456 quantity: 1
-
+
TEMPLATE;
}
diff --git a/lib/internal/Magento/Framework/MessageQueue/composer.json b/lib/internal/Magento/Framework/MessageQueue/composer.json
index 9039e5a8775b2..abf3e389ce969 100644
--- a/lib/internal/Magento/Framework/MessageQueue/composer.json
+++ b/lib/internal/Magento/Framework/MessageQueue/composer.json
@@ -1,24 +1,26 @@
{
"name": "magento/framework-message-queue",
"description": "N/A",
- "config": {
- "sort-packages": true
- },
"type": "magento2-library",
"license": [
"OSL-3.0",
"AFL-3.0"
],
+ "config": {
+ "sort-packages": true
+ },
+ "version": "100.4.5",
"require": {
- "magento/framework": "*",
+ "magento/framework": "103.0.*",
"php": "~7.4.0||~8.1.0"
},
"autoload": {
- "psr-4": {
- "Magento\\Framework\\MessageQueue\\": ""
- },
"files": [
"registration.php"
- ]
+ ],
+ "psr-4": {
+ "Magento\\Framework\\MessageQueue\\": ""
+ }
}
}
+
diff --git a/lib/internal/Magento/Framework/composer.json b/lib/internal/Magento/Framework/composer.json
index 2134b9a8463f8..6300e3072799d 100644
--- a/lib/internal/Magento/Framework/composer.json
+++ b/lib/internal/Magento/Framework/composer.json
@@ -9,6 +9,7 @@
"config": {
"sort-packages": true
},
+ "version": "103.0.5-p1",
"require": {
"php": "~7.4.0||~8.1.0",
"ext-bcmath": "*",
@@ -56,11 +57,12 @@
"ext-imagick": "Use Image Magick >=3.0.0 as an optional alternative image processing library"
},
"autoload": {
- "psr-4": {
- "Magento\\Framework\\": ""
- },
"files": [
"registration.php"
- ]
+ ],
+ "psr-4": {
+ "Magento\\Framework\\": ""
+ }
}
}
+