-
Notifications
You must be signed in to change notification settings - Fork 27
MC-30776: Improve Performance of SVC #28
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
d2eb18e
to
f672d12
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good 💯 Please make a couple of minor changes to avoid merge conflicts.
Thanks!
composer.json
Outdated
@@ -1,7 +1,7 @@ | |||
{ | |||
"name": "magento/magento-semver", | |||
"description": "Magento semantic version checker", | |||
"version": "3.0.0", | |||
"version": "4.0.0", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Release 4.0.0 has already gone out. Please bump this to 5.0.0
@@ -10,10 +10,11 @@ | |||
"require": { | |||
"php": "~7.1.3||~7.2.0||~7.3.0", | |||
"phpstan/phpdoc-parser": "^0.3.5", | |||
"symfony/console": "~4.4.0", | |||
"symfony/console": "~4.1.0||~4.4.0", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
These changes have gone out as part of v4.0.0. Please rebase your feature branch on develop
.
Thanks!
- Added nikic/php-parser as hard dependency in composer - Improved performance of DependencyMap creation. - Remove stms when adding ClassMethod nodes to dependency tree - Added better doc comments - Addeed more aggresive AbstractApiVisitor traversal termination - Refactored code to use switch statements
- bump of composer svc version - regenerated composer.lock with php 7.1
@Rrego6 This is ready to go except the two items I outlined above. Let me know once that's done so I can merge it in. Thanks! |
https://fisheye.corp.magento.com/cru/CR-MAGETWO-50036 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me 💯 👍
* MC-30776: Improve Performance of SVC (#28) - Added nikic/php-parser as hard dependency in composer - Improved performance of DependencyMap creation. - Remove stms when adding ClassMethod nodes to dependency tree - Added better doc comments - Addeed more aggresive AbstractApiVisitor traversal termination - Refactored code to use switch statements Co-authored-by: Raoul Rego <[email protected]>
* SVC Release 5.0.0 (#32) * MC-30776: Improve Performance of SVC (#28) - Added nikic/php-parser as hard dependency in composer - Improved performance of DependencyMap creation. - Remove stms when adding ClassMethod nodes to dependency tree - Added better doc comments - Addeed more aggresive AbstractApiVisitor traversal termination - Refactored code to use switch statements Co-authored-by: Raoul Rego <[email protected]> * MC-33067: Update magento2-infrastructure composer dependencies - Add PHP 7.4 to composer.json * Update magento-semver to be compatible with PHP7.4 (#33) * MC-33156: Update magento-semver to be compatible with PHP7.4
Has been added compatibility with PHP 8 to `magento/semver`
Description (*)
Add performance improvements to SVC during creation of DependencyMap and creation of static analyzers. I also remove the method stmts from the method nodes being stored in the dependency map. This is to fix the memory issues when comparing files.
- Added nikic/php-parser as hard dependency in composer
- Improved performance of DependencyMap creation.
- Remove stms when adding ClassMethod nodes to dependency tree
- Added better doc comments
- Addeed more aggresive AbstractApiVisitor traversal termination
- Refactored code to use switch statements
Fixed Issues (if relevant)
https://jira.corp.magento.com/browse/MC-30776
Manual testing scenarios (*)
Compared results with running original svc branch using 2.3-develop and 2.4-develop.
Both logs are equivalent. The only difference is that this branch adds some "Method implementation changed" PATCH changes. This is explained in AbstractApiVisitor::enterNode comment.
Questions or comments
Contribution checklist (*)