Skip to content

The Upgrade Compatibility Tool project Run Configuration feature #625

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Conversation

bohdan-harniuk
Copy link
Collaborator

@bohdan-harniuk bohdan-harniuk commented Sep 3, 2021

Description (*)
This PR contains a new feature in the plugin. It is a GUI for the Upgrade Compatibility Tool.

The UCT run configuration provides the ability to configure UCT installed for the project via composer. If the UCT was installed separately (outside the project), a such UCT executable can also be chosen in the dedicated run configuration. In the case of the UCT isn't found in the current project, there is a message that informs about that and also link that provides the ability to install the UCT for the current project. Be aware, that the UCT is an Adobe Commerce feature, so to install it you should have your Adobe Commerce license key.

The UCT run configuration template can be found in the Run/Debug configurations dialog -> Add New Configuration -> Upgrade Compatibility Tool:

Screenshot 2021-09-03 at 14 32 26

The UCT run configuration template has the next view:

Screenshot 2021-09-03 at 14 39 24

There are the main components of the configuration template:

  1. UCT Executable - path to the UCT executable script which is located by the path bin/uct from the UCT source root directory, required field
  2. Project Root - current PHPStorm Project root directory, it is determined automatically, required field
  3. Path To Analyse - this field allows you to restrict the search to the specified folder, optional field
  4. Coming Version - the Adobe Commerce targeted version, required field
  5. Min Issue Level - minimum issue level to show in report. Default is [WARNING], optional field
  6. Ignore Current Version Compatibility Issues - use this option when you do not want to include known critical issues, errors and warnings in your Upgrade Compatibility Tool report, optional field
  7. Message that appears if the UCT could not be found for current PHPStorm Project
  8. Link to install the UCT for the current PHPStorm Project.

After the run configuration template is configured it can be used to easily run the tool via a single click whenever needed.

The UCT installation for the current project (if composer wasn't authenticated with the Adobe Commerce repository):

uct-run-configuration-1-min

The composer asks the auth keys if they couldn’t be found, for more information read the official documentation.

After providing it with your auth keys you will get the same output as for the authenticated users:

uct-run-configuration-2-min

To run the UCT click on the Run 'UCT Run' green button:

uct-run-configuration-3-min

The results of UCT execution is displayed in the console including handy navigation to the compatibility issues in the code.

The output of the tool is displayed in the PHPStorm console with the ability to click on the references to:

  • navigate to the code that has an issue
  • navigate to the issue code description on the DevDocs page
  • navigate to the report file

Contribution checklist (*)

  • Pull request has a meaningful description of its purpose
  • All commits are accompanied by meaningful commit messages
  • All new or changed code is covered with integration/functional tests (if applicable)
  • All automated tests passed successfully (all builds are green)

@bohdan-harniuk bohdan-harniuk force-pushed the uct-project-run-configuration-feature branch from 158cfa4 to 7eeb20f Compare September 3, 2021 13:47
@bohdan-harniuk bohdan-harniuk changed the title The Upgrade Compatibility Tool project run configuration feature The Upgrade Compatibility Tool project Run Configuration feature Sep 3, 2021
Copy link
Contributor

@eduard13 eduard13 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great job 👏

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants