Skip to content
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

Code quality: added PHPMD, updated workflow #4303

Merged
merged 61 commits into from
Nov 11, 2024

Conversation

sreichel
Copy link
Contributor

Description (*)

PHPMD

Added to workflow. The config is there since years, but it never was used b/c of to much "common" errors.

  • renamed a lot of variables that does not fit camel-case.
    Note: Underscore-prefix is still allowed but may be removed (?).
  • suppressed some errors we cant change in DOCs (usage of Superglobals, silence operator).
  • excluded some sniff to re-check later
  • baselined some error that could be reviewed in time (empty catch blocks, unused private methods e.g.)

PHPCS: ECG standard

This check was useles. It had only onyl rule (Ecg.Performance.Loop.ModelLSD) enabled and every files was excluded.

Added rules. Some of them could/should be removed/fixed seperatly.

phpstorm

In phpstorms phpcs-config you can only select one config file for code-sniffs, but we have three (default, phpcompa, ecg). Added .phpcs.xml to allow syntax highlighting for all sniffs. Just add this file as custom ruleset.

Note: for custom rules use local phpcs.xml

Minor changes

  • dot-prefixed all dev-files (phpunit, rector, ... for cleaner basedir)
  • added some script commands to composer.json
  • removed a lot of phpcs:ignore comments (not all)

Related Pull Requests

@sreichel sreichel marked this pull request as draft October 23, 2024 02:36
@sreichel sreichel mentioned this pull request Oct 23, 2024
@sreichel sreichel marked this pull request as ready for review October 23, 2024 19:20
# Conflicts:
#	.ddev/commands/web/phpunit-coverage
#	.ddev/commands/web/phpunit-coverage-local
#	.phpstan.dist.baseline.neon
#	tests/unit/Mage/Admin/Model/UserTest.php
# Conflicts:
#	.github/workflows/phpcs.yml
#	.phpcs.ecg.xml.dist
#	.phpstan.dist.baseline.neon
#	composer.json
@github-actions github-actions bot removed Component: ProductAlert Relates to Mage_ProductAlert Component: Sitemap Relates to Mage_Sitemap Component: Cron Relates to Mage_Cron Component: Widget Relates to Mage_Widget Component: Weee Relates to Mage_Weee Component: Sendfriend Relates to Mage_Sendfriend Component: Log Relates to Mage_Log Component: Authorizenet Relates to Mage_Authorizenet Component: GoogleAnalytics Relates to Mage_GoogleAnalytics Component: Paygate Relates to Mage_Paygate labels Nov 8, 2024
@addison74 addison74 merged commit eaf63c1 into OpenMage:main Nov 11, 2024
21 checks passed
@sreichel sreichel deleted the phpmd-workflow branch November 11, 2024 11:36
fballiano added a commit to MahoCommerce/maho that referenced this pull request Nov 11, 2024
sreichel added a commit to sreichel/magento-lts that referenced this pull request Nov 11, 2024
fballiano added a commit to MahoCommerce/maho that referenced this pull request Nov 11, 2024
addison74 pushed a commit that referenced this pull request Nov 12, 2024
* Bugfix: hide exception, ref #4303

* Update app/code/core/Mage/Core/Model/Layout.php

Co-authored-by: Ng Kiat Siong <[email protected]>

---------

Co-authored-by: Ng Kiat Siong <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Component: Adminhtml Relates to Mage_Adminhtml Component: Api PageRelates to Mage_Api Component: Api2 Relates to Mage_Api2 Component: Bundle Relates to Mage_Bundle Component: Catalog Relates to Mage_Catalog Component: CatalogIndex Relates to Mage_CatalogIndex Component: CatalogInventory Relates to Mage_CatalogInventory Component: Checkout Relates to Mage_Checkout Component: Cms Relates to Mage_Cms Component: ConfigurableSwatches Relates to Mage_ConfigurableSwatches Component: Core Relates to Mage_Core Component: Customer Relates to Mage_Customer Component: Dataflow Relates to Mage_Dataflow Component: Directory Relates to Mage_Directory Component: Downloadable Relates to Mage_Downloadable Component: Eav Relates to Mage_Eav Component: ImportExport Relates to Mage_ImportExport Component: Index Relates to Mage_Index Component: Install Relates to Mage_Install Component: lib/Mage Relates to lib/Mage Component: lib/Varien Relates to lib/Varien Component: lib/* Relates to lib/* Component: Oauth Relates to Mage_Oauth Component: Page Relates to Mage_Page Component: Payment Relates to Mage_Payment Component: PayPal Relates to Mage_Paypal Component: Reports Relates to Mage_Reports Component: Review Relates to Mage_Review Component: Rss Relates to Mage_Rss Component: Sales Relates to Mage_Sales Component: SalesRule Relates to Mage_SalesRule Component: Shipping Relates to Mage_Shipping Component: Tax Relates to Mage_Tax Component: Uploader Relates to Mage_Uploader Component: Usa Relates to Mage_Usa Component: Wishlist Relates to Mage_Wishlist composer Relates to composer.json ddev environment phpcs phpstan phpunit rector Template : admin Relates to admin template
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants