Created at 2024-09-03 19:22:11 , with PHPMetrics v2.8.2 (Jean-François Lépine).
Violations
15
Information
1
Warnings
9
Errors
5
Criticals
0

Class Violations

Class Violations
Snicco\Component\BetterWPMail\Mailer
Too complex method code error
This class looks really complex.

* Algorithms are complex (Max cyclomatic complexity of class methods is 16)

Maybe you should delegate some code to other objects or split complex method.
Probably bugged warning
This component contains in theory 0.35 bugs.

* Calculation is based on number of operators, operands, cyclomatic complexity
* See more details at https://en.wikipedia.org/wiki/Halstead_complexity_measures
* testsuites has dependency to this class.

Maybe you should check your unit tests for this class.
Too complex method code Probably bugged
Snicco\Component\BetterWPMail\Transport\WPMailTransport
Probably bugged warning
This component contains in theory 0.48 bugs.

* Calculation is based on number of operators, operands, cyclomatic complexity
* See more details at https://en.wikipedia.org/wiki/Halstead_complexity_measures
* testsuites has dependency to this class.

Maybe you should check your unit tests for this class.
Probably bugged
Snicco\Component\BetterWPMail\ValueObject\Mailbox
Too complex method code error
This class looks really complex.

* Algorithms are complex (Max cyclomatic complexity of class methods is 11)

Maybe you should delegate some code to other objects or split complex method.
Too complex method code
Snicco\Component\BetterWPMail\ValueObject\Email
Blob / God object error
A blob object (or "god class") does not follow the Single responsibility principle.

* object has lot of public methods (39, excluding getters and setters)
* object has a high Lack of cohesion of methods (LCOM=17)
* object knows everything (and use lot of external classes)

Maybe you should reducing the number of methods splitting this object in many sub objects.
Too complex class code error
This class looks really complex.

* Algorithms are complex (Total cyclomatic complexity of class is 22)
* Component uses 128 operators

Maybe you should delegate some code to other objects.
Probably bugged warning
This component contains in theory 0.7 bugs.

* Calculation is based on number of operators, operands, cyclomatic complexity
* See more details at https://en.wikipedia.org/wiki/Halstead_complexity_measures
* testsuites has dependency to this class.

Maybe you should check your unit tests for this class.
Too long information
This class looks really long.

* Class has 304 logical lines of code
* Class has 443 lines of code

Maybe your class should not exceed 200 lines of logical code
Blob / God object Too complex class code Probably bugged Too long
Snicco\Component\BetterWPMail\Testing\FakeTransport
Too complex method code error
This class looks really complex.

* Algorithms are complex (Max cyclomatic complexity of class methods is 14)

Maybe you should delegate some code to other objects or split complex method.
Probably bugged warning
This component contains in theory 0.68 bugs.

* Calculation is based on number of operators, operands, cyclomatic complexity
* See more details at https://en.wikipedia.org/wiki/Halstead_complexity_measures
* testsuites has dependency to this class.

Maybe you should check your unit tests for this class.
Too complex method code Probably bugged

Package Violations

Package Violations
Snicco\Component\BetterWPMail\Renderer
Stable Dependencies Principle warning
Packages should depend in the direction of stability.

This package is more stable (0.25) than 1 package(s) that it depends on.
The packages that are more stable are

* Snicco\Component\BetterWPMail\Exception (0.5)
Stable Dependencies Principle
Snicco\Component\BetterWPMail\Transport
Stable Dependencies Principle warning
Packages should depend in the direction of stability.

This package is more stable (0.625) than 1 package(s) that it depends on.
The packages that are more stable are

* Snicco\Component\BetterWPMail (0.722)
Stable Dependencies Principle
Snicco\Component\BetterWPMail\Event
Stable Dependencies Principle warning
Packages should depend in the direction of stability.

This package is more stable (0.5) than 1 package(s) that it depends on.
The packages that are more stable are

* Snicco\Component\BetterWPMail (0.722)
Stable Dependencies Principle
Snicco\Component\BetterWPMail\ValueObject
Stable Abstractions Principle warning
Packages should be either abstract and stable or concrete and instable.

This package is instable and abstract.
Stable Dependencies Principle warning
Packages should depend in the direction of stability.

This package is more stable (0.429) than 1 package(s) that it depends on.
The packages that are more stable are

* Snicco\Component\BetterWPMail (0.722)
Stable Abstractions Principle Stable Dependencies Principle