NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
Packagist · #1299 most downloaded on Packagist
`phplint` is a tool that can speed up linting of php files by running several lint processes at once.
Last release 15 days ago
23 Sep 2026
Release timing varies
gaps range from 2 weeks to 8 months
Some releases are documented
notes for 32 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
10 years old
117 releases · first in 2016
This first release candidate of the new version 9.8 follows changes accordingly to the ROADMAP .
This first release candidate of the new version 9.8 follows changes
accordingly to the ROADMAP.
Any feedback will be greatly appreciated.
And if you want to help/contribute to make PHPLint 9.8 more stable,
do not hesitate to add new report with title prefixed by 9.8 |
Important
If your issue/report contains contextual information (to identify more easily the problem),
please provide the output of the diagnose command, or diagnostic printed after the lint command execution.
Remember you can add what you want (with PLINT_DIAGNOSTIC environment variable). Read the Diagnose Manager user Guide to learn more.
The lint command is now modernized and use the Symfony invokable syntax.
The Console Argument Resolvers introduced with Symfony 8.1
is now available in a compatible format for PHP 8.2 / Symfony 7.4 LTS, and PHP 8.4 / Symfony 8.1
With in minds to reach goal to reduce vendor dependencies,
a new Extension Architecture was introduced with five basic extensions/plugins :
CacheManager to handle all cached results runs (using symfony/cache package).
Read the Cache Manager User Guide
and learn more on architecture, if you want to contribute or adapt behaviors
with the Developer Guide.
DiagnoseManager to output diagnostic information either after running the lint command, or just with the diagnose command.
Read the Diagnose Manager User Guide
and learn more on architecture, if you want to contribute or adapt behaviors
with the Developer Guide.
OutputManager to handle results in different formats: console (default), sarif, checkstyle, junit, json.
Read the Output Manager User Guide
and learn more on architecture, if you want to contribute or adapt behaviors
with the Developer Guide.
ProfileManager to output a mini profiler information to identify what resources are consumed by PHPLint.
Read the Profile Manager User Guide
and learn more on architecture, if you want to contribute or adapt behaviors
with the Developer Guide.
ProgressManager to handle all progress bars format: auto (default) , dots, bar, indicator.
Read the Progress Manager User Guide
and learn more on architecture, if you want to contribute or adapt behaviors
with the Developer Guide.
Full Changelog: 9.7.2...9.8.0-rc.1
One column per quarter.
Thanks to @StantonMatt for his contribution to fix this issue
#224 : Linting the very same file in different file-system locations should re-use a single cache file
Thanks to @StantonMatt for his contribution to fix this issue
#232 : Upgrade Dockerfile to use PHP 8.5 runtime
Full Changelog: 9.7.1...9.7.2
PHAR distribution by disabling BOX dump-autoload setting
dump-autoload settingFull Changelog: 9.7.0...9.7.1
see CHANGELOG.md for details
see CHANGELOG.md for details
Full Changelog: 9.6.3...9.7.0
9.6.3 - 2025-11-27 Fixed #225 : Performance degradation on 9.x releases Full Changelog : 9.6.2...9.6.3
Full Changelog: 9.6.2...9.6.3
lint command support now the new cache-dir option that replace the legacy cache option, marked as deprecated (and will be removed in next major versio…
lint command support now the new cache-dir option that replace the legacy cache option,Full Changelog: 9.6.1...9.6.2
default cache TTL value is now set to 1 hour (3600 seconds)
--cache-ttl option less than default TTL is in effectFull Changelog: 9.6.0...9.6.1
--cache-ttl option on lint command to solve cache invalidation issue
--cache-ttl option on lint command to solve cache invalidation issueFull Changelog: 9.5.6...9.6.0
Make this package PHP 8.1 compatible again to allow using Symfony Components 6.4 without getting deprecations notices, when running with a PHP 8.4 run…
Make this package PHP 8.1 compatible again to allow using Symfony Components 6.4 without getting deprecations notices,
when running with a PHP 8.4 runtime :
requested by @gnutix
Upgrade Dockerfile to use PHP 8.4 runtime
Full Changelog: 9.5.5...9.5.6
upgrade SARIF output to support PhpLintConverter of bartlett/sarif-php-converters package
bartlett/sarif-php-converters packageFull Changelog: 9.5.4...9.5.5
Only versions 9.5.x or greater are now actively supported.
Warning
Only versions 9.5.x or greater are now actively supported.
Versions 9.1, 9.2, 9.3, and 9.4 won't receive any updates as they reach end-of-life.
Drop PHPUnit 10 support and upgrade to PHPUnit 11
Full Changelog: 9.5.3...9.5.4
### Fixed - #214 : junit invalid xml Full Changelog: 9.5.2...9.5.3
Same as 9.5.0 (except for GitHub Workflows that still used PHP 8.1)
Same as 9.5.0 (except for GitHub Workflows that still used PHP 8.1)
Full Changelog: 9.5.0...9.5.2
Same as 9.5.0 (except for GitHub Workflows that still used PHP 8.1)
Same as 9.5.0 (except for GitHub Workflows that still used PHP 8.1)
Full Changelog: 9.5.0...9.5.1
### Changed - drop support to PHP 8.1 - #213 : Get application version from Composer Runtime API ### Fixed - #192 : The "-x" option does not exist. Fu
Full Changelog: 9.4.1...9.5.0
Nothing published for this version
> This bugfix version is only for the PHAR distribution.
[!NOTE]
This bugfix version is only for the PHAR distribution.
Full Changelog: 9.4.0...9.4.1
support to sarif format is now optional. Requires to install extra package bartlett/sarif-php-converters.
checkstyle formatsarif format is now optional. Requires to install extra package bartlett/sarif-php-converters.[!NOTE]
sarifformat is a good example of how to use custom format not provided by current PHPLint distribution. Read how to use it at https://github.com/llaville/sarif-php-converters/blob/1.0/docs/converter/phplint.md
log-* and sarif-converter optionsprogress option is now detected on phplint binary launcher.Full Changelog: 9.3.1...9.4.0
Nothing published for this version
bootstrap option handling in wrong place
New bootstrap option to make it easier to load whatever you need before to run linter.
bootstrap option to make it easier to load whatever you need before to run linter.examples/sarif_output.php) to show how to generate a SARIF report programmaticallyvendor-dir configurationFull Changelog: 9.2.0...9.3.0
Nothing published for this version
Reorganize binary launcher (bin/phplint) and autoloader (autoload.php replaced config/bootstrap.php)
bin/phplint) and autoloader (autoload.php replaced config/bootstrap.php)Full Changelog: 9.1.2...9.2.0
Nothing published for this version
### Fixed - #202 : composer config vendor-dir is ignored - #203 : Uncaught Error: Failed opening required "phar:///usr/local/bin/phplint/config/bootst
Full Changelog: 9.1.1...9.1.2
### Fixed - #200 : Unable to create file /github/home/.composer/config.json in GitHub Action - #201 : GitHub Action build docker on fly with wrong ver
/github/home/.composer/config.json in GitHub ActionFull Changelog: 9.1.0...9.1.1
PHPStan dev tool to enforce code quality of this project (see Contributor guide)
DebugFormatterHelper for asynchronous processProcessHelper for asynchronous processProgressIndicator) to let users know that the phplint command isn't stalled. Uses --progress=indicator.ProgressPrinter and ProgressBar extensions must now implement the Overtrue\PHPLint\Output\ConsoleOutputInterface specificationcheck-style begins style:check, and fix-style begins style:fix)box.json.distsetApplicationVersion and setConfigResolver methods were removed from Overtrue\PHPLint\Output\ConsoleOutputInterface
as there are no more requiredFull Changelog: 9.0.6...9.1.0
IMPORTANT Do not use version 9.0.7 (wrong fixes for Docker targets, including GitHub Actions)
IMPORTANT Do not use version 9.0.7 (wrong fixes for Docker targets, including GitHub Actions)
/github/home/.composer/config.json in GitHub ActionFull Changelog: 9.0.6...9.0.8
### Fixed - #200 : Unable to create file /github/home/.composer/config.json in GitHub Action - #201 : GitHub Action build docker on fly with wrong ver
/github/home/.composer/config.json in GitHub ActionFull Changelog: 9.0.6...9.0.7
### Fixed - #196 : Better Symfony 7 support Full Changelog: 9.0.5...9.0.6
This version is compatible PHP 8.0, 8.1, 8.2 and 8.3
This version is compatible PHP 8.0, 8.1, 8.2 and 8.3
CAUTION Next minor release 9.1 will drop support to PHP 8.0
Full Changelog: 9.0.4...9.0.5
ConsoleOutput is no more final to be able to customize it
Full Changelog: 9.0.3...9.0.4
### Fixed - #178 : "no configuration file is found" message without --no-configuration flag - #175 : PHAR version not available since release 9.0.0 Fu
Full Changelog: 9.0.2...9.0.3
### Fixed - #176 : Enhance Cache support for Windows platform Full Changelog: 9.0.1...9.0.2
configure Release Workflow to run manually
Full Changelog: 9.0.0...9.0.1
introduces Changie for changelog automation
--manifest option to display contents of manifest of the PHAR version (only) of PHPLinterjetbrains/phpstorm-stubs requirement to accept v2022brainmaestro/composer-git-hooks requirement to accept v3.0 alpha1 : that will allow to update psr/log to v3 and symfony/console to v6--log-json option)--log-junit option)humbug/php-scoper to allow usage of Box v4 with at least PHP 8.1Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Compare
Compare
Your coding agent can read these notes before it upgrades. Set up the MCP server →