Skip to content

Enforce PHPStan level 6 compliance across all packages#432

Merged
armanist merged 3 commits into
quantum-php:masterfrom
armanist:431-PHPStan-Level-6-Compliance
Mar 20, 2026
Merged

Enforce PHPStan level 6 compliance across all packages#432
armanist merged 3 commits into
quantum-php:masterfrom
armanist:431-PHPStan-Level-6-Compliance

Conversation

@armanist

Copy link
Copy Markdown
Collaborator

Closes #431

@coderabbitai

coderabbitai Bot commented Mar 20, 2026

Copy link
Copy Markdown

Important

Review skipped

Too many files!

This PR contains 166 files, which is 16 over the limit of 150.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 420c6fe5-d08e-4b5f-96e1-fb1243002a45

📥 Commits

Reviewing files that changed from the base of the PR and between 28ae4b0 and a1efe13.

📒 Files selected for processing (166)
  • phpstan.neon.dist
  • src/App/Adapters/WebAppAdapter.php
  • src/App/App.php
  • src/App/Factories/AppFactory.php
  • src/App/Helpers/dir.php
  • src/App/Helpers/misc.php
  • src/App/Traits/AppTrait.php
  • src/App/Traits/ConsoleAppTrait.php
  • src/App/Traits/WebAppTrait.php
  • src/Archive/Adapters/ZipAdapter.php
  • src/Archive/Archive.php
  • src/Archive/Contracts/ArchiveInterface.php
  • src/Archive/Factories/ArchiveFactory.php
  • src/Asset/Asset.php
  • src/Asset/AssetManager.php
  • src/Asset/Exceptions/AssetException.php
  • src/Auth/Adapters/JwtAuthAdapter.php
  • src/Auth/Auth.php
  • src/Auth/Contracts/AuthServiceInterface.php
  • src/Auth/Factories/AuthFactory.php
  • src/Auth/Traits/AuthTrait.php
  • src/Auth/User.php
  • src/Cache/Adapters/DatabaseAdapter.php
  • src/Cache/Adapters/FileAdapter.php
  • src/Cache/Adapters/MemcachedAdapter.php
  • src/Cache/Adapters/RedisAdapter.php
  • src/Cache/Cache.php
  • src/Captcha/Adapters/HcaptchaAdapter.php
  • src/Captcha/Adapters/RecaptchaAdapter.php
  • src/Captcha/Captcha.php
  • src/Captcha/Traits/CaptchaTrait.php
  • src/Console/CommandDiscovery.php
  • src/Console/Commands/InstallToolkitCommand.php
  • src/Console/Commands/MigrationGenerateCommand.php
  • src/Console/Commands/MigrationMigrateCommand.php
  • src/Console/Commands/ModuleGenerateCommand.php
  • src/Console/Commands/OpenApiCommand.php
  • src/Console/Commands/ResourceCacheClearCommand.php
  • src/Console/Commands/RouteListCommand.php
  • src/Console/Commands/ServeCommand.php
  • src/Console/Contracts/CommandInterface.php
  • src/Console/QtCommand.php
  • src/Contracts/StorageInterface.php
  • src/Cookie/Contracts/CookieStorageInterface.php
  • src/Cookie/Cookie.php
  • src/Cron/CronLock.php
  • src/Cron/CronManager.php
  • src/Cron/Schedule.php
  • src/Database/Adapters/Idiorm/IdiormDbal.php
  • src/Database/Adapters/Idiorm/IdiormPatch.php
  • src/Database/Adapters/Idiorm/Statements/Criteria.php
  • src/Database/Adapters/Idiorm/Statements/Join.php
  • src/Database/Adapters/Idiorm/Statements/Query.php
  • src/Database/Adapters/Idiorm/Statements/Result.php
  • src/Database/Adapters/Sleekdb/SleekDbal.php
  • src/Database/Adapters/Sleekdb/Statements/Criteria.php
  • src/Database/Adapters/Sleekdb/Statements/Join.php
  • src/Database/Adapters/Sleekdb/Statements/Reducer.php
  • src/Database/Adapters/Sleekdb/Statements/Result.php
  • src/Database/Contracts/DbalInterface.php
  • src/Database/Contracts/RelationalInterface.php
  • src/Database/Database.php
  • src/Database/Schemas/Table.php
  • src/Database/Traits/RelationalTrait.php
  • src/Debugger/Debugger.php
  • src/Debugger/DebuggerStore.php
  • src/Di/Di.php
  • src/Encryption/Adapters/AsymmetricEncryptionAdapter.php
  • src/Encryption/Cryptor.php
  • src/Encryption/Factories/CryptorFactory.php
  • src/Encryption/Helpers/encryption.php
  • src/Environment/Environment.php
  • src/Environment/Helpers/env.php
  • src/Environment/Helpers/server.php
  • src/Environment/Server.php
  • src/Hasher/Hasher.php
  • src/Hook/HookManager.php
  • src/Http/Helpers/http.php
  • src/Http/Request.php
  • src/Http/Request/HttpRequest.php
  • src/Http/Response.php
  • src/Http/Traits/Request/Body.php
  • src/Http/Traits/Request/File.php
  • src/Http/Traits/Request/Header.php
  • src/Http/Traits/Request/Internal.php
  • src/Http/Traits/Request/Params.php
  • src/Http/Traits/Request/RawInput.php
  • src/Http/Traits/Request/Url.php
  • src/Http/Traits/Response/Body.php
  • src/Http/Traits/Response/Header.php
  • src/HttpClient/HttpClient.php
  • src/Jwt/JwtToken.php
  • src/Lang/Factories/LangFactory.php
  • src/Lang/Helpers/lang.php
  • src/Lang/Lang.php
  • src/Lang/Translator.php
  • src/Logger/Adapters/DailyAdapter.php
  • src/Logger/Adapters/MessageAdapter.php
  • src/Logger/Adapters/SingleAdapter.php
  • src/Logger/Contracts/ReportableInterface.php
  • src/Logger/Helpers/logger.php
  • src/Logger/Traits/LoggerTrait.php
  • src/Mailer/Adapters/MailgunAdapter.php
  • src/Mailer/Adapters/MandrillAdapter.php
  • src/Mailer/Adapters/SendgridAdapter.php
  • src/Mailer/Adapters/SendinblueAdapter.php
  • src/Mailer/Adapters/SmtpAdapter.php
  • src/Mailer/Contracts/MailerInterface.php
  • src/Mailer/MailTrap.php
  • src/Mailer/Mailer.php
  • src/Mailer/Traits/MailerTrait.php
  • src/Middleware/MiddlewareManager.php
  • src/Migration/MigrationManager.php
  • src/Migration/QtMigration.php
  • src/Model/DbModel.php
  • src/Model/Factories/ModelFactory.php
  • src/Model/Helpers/model.php
  • src/Model/Model.php
  • src/Model/ModelCollection.php
  • src/Model/Traits/HasTimestamps.php
  • src/Module/ModuleLoader.php
  • src/Module/ModuleManager.php
  • src/Paginator/Adapters/ArrayPaginator.php
  • src/Paginator/Adapters/ModelPaginator.php
  • src/Paginator/Contracts/PaginatorInterface.php
  • src/Paginator/Exceptions/PaginatorException.php
  • src/Paginator/Factories/PaginatorFactory.php
  • src/Paginator/Paginator.php
  • src/Paginator/Traits/PaginatorTrait.php
  • src/Renderer/Adapters/HtmlAdapter.php
  • src/Renderer/Adapters/TwigAdapter.php
  • src/Renderer/Contracts/TemplateRendererInterface.php
  • src/Renderer/Renderer.php
  • src/Router/Helpers/router.php
  • src/Router/MatchedRoute.php
  • src/Router/PatternCompiler.php
  • src/Router/Route.php
  • src/Router/RouteBuilder.php
  • src/Router/RouteDispatcher.php
  • src/Service/Factories/ServiceFactory.php
  • src/Service/QtService.php
  • src/Session/Adapters/Database/DatabaseSessionAdapter.php
  • src/Session/Adapters/Native/NativeSessionAdapter.php
  • src/Session/Contracts/SessionStorageInterface.php
  • src/Session/Session.php
  • src/Session/Traits/SessionTrait.php
  • src/Storage/Adapters/Dropbox/DropboxApp.php
  • src/Storage/Adapters/GoogleDrive/GoogleDriveApp.php
  • src/Storage/Adapters/Local/LocalFileSystemAdapter.php
  • src/Storage/Contracts/CloudAppInterface.php
  • src/Storage/Contracts/FilesystemAdapterInterface.php
  • src/Storage/Contracts/LocalFilesystemAdapterInterface.php
  • src/Storage/Factories/FileSystemFactory.php
  • src/Storage/FileSystem.php
  • src/Storage/Traits/CloudAppTrait.php
  • src/Storage/UploadedFile.php
  • src/Tracer/ErrorHandler.php
  • src/Transformer/Contracts/TransformerInterface.php
  • src/Transformer/Helpers/transformer.php
  • src/Transformer/Transformer.php
  • src/Validation/Rule.php
  • src/Validation/Traits/General.php
  • src/Validation/Traits/Type.php
  • src/Validation/Validator.php
  • src/View/Helpers/view.php
  • src/View/QtView.php

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Tip

CodeRabbit can use your project's `phpmd` ruleset to improve the quality of PHP code reviews.

You can customize the ruleset in your CodeRabbit configuration, or provide a path to a custom ruleset file.

@codecov

codecov Bot commented Mar 20, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 80.95238% with 8 lines in your changes missing coverage. Please review.
✅ Project coverage is 82.64%. Comparing base (28ae4b0) to head (a1efe13).
⚠️ Report is 4 commits behind head on master.

Files with missing lines Patch % Lines
src/Console/Commands/ServeCommand.php 0.00% 3 Missing ⚠️
src/Asset/Exceptions/AssetException.php 0.00% 2 Missing ⚠️
src/Console/Commands/InstallToolkitCommand.php 0.00% 1 Missing ⚠️
src/Console/Commands/RouteListCommand.php 0.00% 1 Missing ⚠️
src/Mailer/Traits/MailerTrait.php 0.00% 1 Missing ⚠️
Additional details and impacted files
@@             Coverage Diff              @@
##             master     #432      +/-   ##
============================================
+ Coverage     82.63%   82.64%   +0.01%     
- Complexity     2719     2721       +2     
============================================
  Files           241      241              
  Lines          7300     7305       +5     
============================================
+ Hits           6032     6037       +5     
  Misses         1268     1268              

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@armanist armanist added enhancement New feature or request help wanted Extra attention is needed labels Mar 20, 2026
@armanist armanist added this to the 3.0.0 milestone Mar 20, 2026
Comment thread src/Mailer/Adapters/SmtpAdapter.php
… SmtpAdapter methods, add null-safety to RouteListCommand
@armanist armanist requested a review from andrey-smaelov March 20, 2026 16:15
@armanist armanist merged commit 19c2028 into quantum-php:master Mar 20, 2026
6 of 7 checks passed
@armanist armanist deleted the 431-PHPStan-Level-6-Compliance branch March 20, 2026 16:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request help wanted Extra attention is needed

Projects

None yet

Development

Successfully merging this pull request may close these issues.

PHPStan Level 6 Compliance

2 participants