• Stars
    star
    110
  • Rank 316,770 (Top 7 %)
  • Language Vue
  • Created about 3 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Magento 2 Upgrade GUI

Magento 2 Upgrade GUI

A GUI tool to help you visually and easily spot differences in a three-way comparison between the version you upgraded from, the version you upgraded to, and your Magento preferences, plugins and overrides.

This is an Electron app to make it easier for you to read and process the output files of the Ampersand Magento2 Upgrade Patch Helper.

On the left, it will show the differences between the files of your previous Magento version and the version you upgraded to.

On the right, it will show the customization (override/preference/plugin) in your project and third party extensions.

This will allow you to quickly see differences and to assess whether this change is relevant for your customization.

App home

Instructions

To use this app, you will need the following files in your Magento 2 directory;

  • vendor (regular composer directory)
  • vendor.patch (generated by the upgrade patch helper)
  • vendor_files_to_check.patch (generated by the upgrade patch helper)
  • patch-helper-output.txt (the output generated by the upgrade patch helper, directed from stdout to a file)
  • classmap.json (see below)

You will need to generate the classmap.json file yourself. This is needed because the tool needs to map PSR-4 classnames to actual filenames, which Composer can do for us. Run these commands to generate the file;

composer dump --classmap-authoritative
php -r "\$classmap=require_once('vendor/composer/autoload_classmap.php'); echo json_encode(\$classmap);" > classmap.json

Output

When you open up a project directory, the GUI will create 3 result files in the Magento 2 root directory; warnings.json, infoNotices.json and results.md. The warnings.json file is used to track state so you can close the GUI and continue working on the project. The Markdown file resembles that state, but in a nice Markdown format you can paste it into your issue management system to keep your colleagues uptodate.

Screenshots

Editor

Instructions page

Installation

Download the AppImage file from the releases page. Make it executable (with chmod +x) and run it!

Git auto-commit

If you have this feature enabled (default), it will add the file to the git stage and commit to your repository when you click "Resolve". Enabling/disabling this feature and the commit message can be changed in the Settings screen.

GitLab integration

By setting a few config settings, you can auto-update an issue with your progress. The GUI will create a note on the issue with a Markdown table. It will then update that note when an item is changed.

You can set these settings in the Settings screen.

Settings page

The output in Gitlab will look like this:

image

Config file

The config file will be created when the app first starts.

{
    "gitlab": {
            "host": "https://gitlab.com",
            "token": "xxxxxxxxxxxxxxxxx",
            "project_id": "123",
            "issue_id": "123"
    },
    "git": {
            "auto_commit": true,
            "auto_commit_message": "Upgrade: resolved %s"
    }
}

It is stored in your home dir, but the location differs per OS. On Linux, it is ~/.config/magento2-upgrade-gui/config.json.

PhpStorm integration

If you have the IDE Remote Control plugin installed (PhpStorm 2022.3 and later) and the project open, you can click on the file path on the right hand side (or on the "Original vendor file" and "New vendor file" links on the left hand side) to have it open the file in PhpStorm. To disable JetBrains warning 'file' API is requested. Do you trust unknown host?, you can go to File > Settings > Build, Execution, Deployment > Debugger and Check the Allow unsigned requests in the Built-in Server section.

Development

Clone this repo and run this command to install all necessary dependencies:

yarn install

To start developing the app, you can run:

NODE_ENV=development yarn electron:serve

More Repositories

1

magento2-regenerate-catalog-urls

This extension adds console commands to be able to regenerate; a product rewrite URL based on its url path; a category rewrite URL based on its url path; a category URL path based on its URL key and its parent categories.
PHP
264
star
2

masquerade

Faker-driven, configuration-based, platform-agnostic, locale-compatible data faker tool
PHP
237
star
3

awesome-shopware6

Awesome Shopware 6 plugins, resources, themes, etc
179
star
4

magento2-cypress-testing-suite

A community-driven Cypress testing suite for Magento 2
JavaScript
172
star
5

magento2-php8-cc

Magento 2 PHP 8.x compatibility checker
PHP
95
star
6

LargeConfigProducts

Large Configurable Products workaround for Magento 2
PHP
91
star
7

magento2-serversideanalytics

Server side analytics for Magento 2
PHP
64
star
8

magento2-lightspeed

Magento 2 - Lightspeed for Google Lighthouse optimizations
PHP
63
star
9

magento2-prismicio

Magento 2 Prismic integration
PHP
38
star
10

magerun2-addons

Addon modules for n98-magerun2
PHP
29
star
11

magento2-composer-quality-patches

elgentos/magento2-composer-quality-patches
PHP
22
star
12

CategoryTiling

Adds tiling display option to categories for showing sub-categories as tiles
PHP
20
star
13

magento2-gallery-replacement

Simple Magento 2 gallery replacement
HTML
20
star
14

shopware-seo-canonical-url

Use parent product canonical URL for SEO for product variants
Twig
17
star
15

magento2-backend-launcher

PHP
17
star
16

magento2-product-duplicate-images-remove

Magento 2 extension to remove duplicate product images
PHP
16
star
17

magento2-imgix

Imgix extension for Magento 2 - automatically optimize your images
PHP
16
star
18

http-statuscode-checker

CLI HTTP statuscode checker
PHP
15
star
19

magento2-structured-data

PHP
14
star
20

frontend2fa

Magento 2 module for 2FA on the frontend
PHP
14
star
21

EasyAttributes

Batch add attribute options and drag & drop to rearrange their order!
HTML
13
star
22

magento2-consentmode-v2

HTML
13
star
23

Mailcheck

Magento implementation of Mailcheck
PHP
12
star
24

magento2-hyva-checkout-ab-test

Set up an A/B test with different available HyvΓ€ and Luma checkouts
PHP
12
star
25

GoogleTagManager

Inserts Google Tag Manager script in header.
PHP
12
star
26

TableRates

Table rates generator for Magento
JavaScript
12
star
27

shopware-total-qty-in-cart-rule

Adds a Total Quantity In Cart Rule to the Rule Builder
PHP
12
star
28

magento2-clientside-cache

Clientside Cache
HTML
11
star
29

shopware-dutch-email-templates

Dutch email templates for Shopware 6
Twig
10
star
30

hyva-vat-switcher

PHP
10
star
31

magento2-filtered-product-list-noindex

PHP
10
star
32

magento2-baseurlpath

Allow Magento config to have a base url path instead of root without moving Magento 2 into a subdirectory
PHP
10
star
33

magento2-review-reminder

Send out review reminder mails X days after shipment has been made
PHP
10
star
34

magento2-rumvision

Frontend implementation for https://www.rumvision.com/
PHP
9
star
35

AutoInvoice

Automatically invoice some/specific orders.
PHP
8
star
36

TurpentineExtended

Extension to the excellent Nexcess Turpentine extension with shotgun mode
PHP
8
star
37

magento2-eu-tax-rates

Import EU VAT tax rates into Magento 2 with a simple console command
PHP
8
star
38

magento2-link-guest-orders-to-customer

Link existing guest orders to newly created or existing customer based on e-mail address
PHP
7
star
39

magento2-apicacheindexmanagement

Extension to invalidate caches and reindex indexers through the REST API.
PHP
7
star
40

MyFavorites

This extension shows a 'MyFavorites' block in the 'My Account' page with the most ordered products for that customer.
PHP
7
star
41

shopware-default-sort-order

Set the default sort order for category listings
PHP
6
star
42

testing-suite

6
star
43

magento2-secondaryemailaddress

B2B extension to enter secondary email address for logging in, order confirmation, invoice, etc
PHP
6
star
44

CodebaseExceptions

Magento Exceptions to Codebase
PHP
6
star
45

Automanufacturers

Create a category with the manufacturers name after saving a product.
PHP
6
star
46

FalconMollie

Mollie implementation for Deity Falcon
PHP
6
star
47

ServerSideAnalytics

This extension aims to solve the problem of discrepancies between Magento revenue reports and the revenue reports in Google Analytics.
PHP
6
star
48

LocalStorageVersioning

Highly experimental extension to clear localStorage along with Magento 2's static versioning
JavaScript
6
star
49

magento2-hyva-cro-semi-sticky-header

Changes the HyvΓ€ header to a semi-sticky header (dissapears down and reappears up)
HTML
5
star
50

magento2-alternate-urls

PHP
5
star
51

Magento-VR

JavaScript
5
star
52

Tierpercentages

Elgentos Tierpercentages - this module allows you to fill out percentages in the Tier pricing part under Prices
PHP
5
star
53

AddressWithEmail

PHP
5
star
54

CustomDiscount

Set a custom price for a customer on request (sort of quotation)
PHP
5
star
55

magento2-mollie-hide-payment-by-category

JavaScript
5
star
56

AutoConnect

Automatically create the opposite upsell, cross-sell and related products connection when a connection is made
PHP
5
star
57

prismic-importer

Transforms & bundles (Gatsby) Markdown files into Prismic.io JSON files
PHP
5
star
58

magento2-hyva-cro-purchasing-confidence

Magento 2 Hyva CRO extension for increasing the purchasing confidence
PHP
4
star
59

BlockIP

This extension allows the shop administrator to block certain IP's from accessing the shop.
PHP
4
star
60

Openkvk

OpenKvK extension for Magento
JavaScript
4
star
61

GrouponCoupons

Easily import Groupon Coupon codes into your installation (also works for other coupons)
PHP
4
star
62

magento2-algolia-performance

Magento 2 module that makes it possible to set a debounce and a minimum character amount for Algolia Autocomplete
PHP
4
star
63

RelatedBundles

This extension creates a new product relation type, Related Bundles.
PHP
4
star
64

ExtendedAoeJsCssTstamp

Extends Aoe_JsCssTstamp to also version JS files that were included with addJs instead of addItem
PHP
4
star
65

magento2-kiyoh

Magento 2 extension for Kiyoh
PHP
3
star
66

parser

Use this library to turn your day-to-day configurations into usable arrays/objects.
PHP
3
star
67

ClientLog

Enable client side Javascript error logging through Mage::log
JavaScript
3
star
68

magento2-vurbis-punchout

Unofficial version of the Vurbis Magento 2 connector
PHP
3
star
69

Quickadd

Provides a rewritable configurable link to directly add products into the shopping cart
PHP
3
star
70

magento2-varnish-extended

This extension extends the built-in Varnish functionalities
PHP
3
star
71

magento2-react

Magento 2 module to add React to Knockout-driven frontend
JavaScript
2
star
72

module-feedbackcompany-magento2

PHP
2
star
73

HidePaymentMethod

Hide banktransfer payment method in the frontend while keeping it enabled for the backend
PHP
2
star
74

hypernode-api-cli

PHAR distribution of the hypernode-api-php client library for stand-alone use
PHP
2
star
75

magetitans

HTML
2
star
76

setup

Makefile
2
star
77

CustomFields

Add custom fields to registration page
PHP
2
star
78

magento2-prismicio-sample-data

Magento 2 - PrismicIO Sample Data
HTML
2
star
79

magento2-notifier-mail-adapter

PHP
2
star
80

gdpr-dump-magento-2-extensions

GDPR dump templates for popular Magento 2 extensions
2
star
81

SendInvoiceEmail

This small extension allows to send out invoice emails for payment methods that do not do this themselves, like PayPal Express and Authorize.net
PHP
2
star
82

Dataprovider

Connection with Dataprovider.com to autofill checkout page
PHP
2
star
83

Backorders

Adds a menu option beneath 'Sales' to show all current orders that contain backorders.
PHP
2
star
84

laravel-coding-standards

2
star
85

Bundlequick

Bundlequick allows you to quickly create a bundled product based on two or more simple products you have selected by using the Bundlequick mass update action.
PHP
2
star
86

Dynamiclinks

This module will dynamically show upsell products based on the previous set of products they have seen in the category view.
PHP
2
star
87

module-categorygridlist

Magento 2 - Offers an option in the backend to toggle grid or list view on a category basis, instead of on a global basis
PHP
2
star
88

FormRedirect

With this extension you can send your contactform thank you page to any page you want!
PHP
2
star
89

magento2-hyva-cro-payment-method-free-labels

Add 'Free' labels to your payment method list in the HyvΓ€ checkout
HTML
1
star
90

github-cli-docker

For all the docker peeps out there, run Github-CLI via docker locally
Shell
1
star
91

magento2-hyva-cro-sticky-cart-proceed-button

Change static call to action to a sticky call to action in the mobile cart
HTML
1
star
92

magento2-composer-plugin

Magento 2 Composer plugin
PHP
1
star
93

CheckoutTelephoneInputType

HTML
1
star
94

magento2-openkvk

PHP
1
star
95

best-practices

HTML
1
star
96

OneLineStoreName

Reformat the 'store' line in the order grid to allow for a compacter view
PHP
1
star
97

HideOutOfStockCrosssell

Hides products in cross-sell recommendations that are out of stock (when backorders are enabled)
PHP
1
star
98

magento2-elasticsuite-prismic-search

Magento 2 ElasticSuite Prismic Search
PHP
1
star
99

magento2-legacy-email-enable

Enable Magento 2 legacy email templates
PHP
1
star
100

magento-module-facebook

PHP
1
star