Releases: vimeo/psalm
Releases · vimeo/psalm
6.8.1
6.8.0
What's Changed
Features
- Add longScanWarning config by @danog in #11302
- Preload all classes before forking (+5% performance) by @danog in #11309
- Improve new array function types, add Deprecated attr support by @danog in #11303
Fixes
- Die when PHP doc not found in update-property-map.php by @M393 in #11136
- Do not throw exceptions on deprecation errors while autoloading deps by @danog in #11313
- Fix ElseIfAnalyzer inconsistency and remove dead code by @theodorejb in #10611
- Deduplicate loop analysis by @theodorejb in #10782
- Add correct type to readline_completion_function by @danog in #11316
- Add rdkafka to extension list in config.xsd by @danog in #11314
New Contributors
Full Changelog: 6.7.1...6.8.0
6.7.1
6.7.0
What's Changed
Features
- Add new
allowBoolToLiteralBoolComparison
config (disabled by default), used to control emission ofRedundantIdentityWithTrue
issues (previously, their emission was controlled by thestrictBinaryOperands
config) by @danog in #11283 - Enable missing
#[Override]
attribute detection (automatic Psalter fixer available) by @danog in #11283 - Enable strict binary operand comparison checks (useful for strict_types migration) by @danog in #11283
- Seal all class properties and methods: this enforces exact description of all class magic (__get/__call...) methods and properties with
@method
or@property
, see here for more info by @danog in #11283 - Disable dangerous
@psalm-suppress all
annotation (may be re-enabled manually with the disableSuppressAll config) by @danog in #11283 - Types in lazy objects by @BenMorel in #11296
Fixes
- Fix parameter name in SplObjectStorage by @kamil-tekiela in #11134
- Fix empty compact report if baseline file is used by @andrey-tech in #11111
Internal changes
- Expose Progress instance to plugins by @danog in #11297
- Change PluginEntryPointInterface to take a PluginRegistrationSocket @danog in #11298
New Contributors
- @andrey-tech made their first contribution in #11111
Full Changelog: 6.6.2...6.7.0
6.6.2
What's Changed
Fixes
- Allow running generate_testsuites.php from a different dir by @MoonE in #11155
- Add missing reset of context inside_general_use by @MoonE in #11157
- Fix false positives for UnusedIssueHandlerSuppression by @edsrzf in #11212
- Fix condition on literal-string by @VincentLanglet in #11252
- Object property types by @MoonE in #11291
- Fix some more tests when running phpunit with args by @MoonE in #11153
- Fix type of property-get with coalesce by @MoonE in #11152
- Fix condition on lowercase-string by @VincentLanglet in #11293
Full Changelog: 6.6.1...6.6.2
6.6.1
What's Changed
Fixes
- fix: add taint source on plugin-added taints by @Patrick-Remy in #10206
- handle instanceof $this by @orklah in #11286
Docs
- Fix key type in PossiblyUndefinedStringArrayOffset.md by @emmanuelGuiton in #11277
Full Changelog: 6.6.0...6.6.1
6.6.0
What's Changed
Features
- Add ClassMustBeFinal issue by @danog in #11279
- Enable MissingOverrideAttribute on all PHP versions by @danog in #11284
Fixes
- Fix trait issue with MissingOverrideAttribute by @danog in #11284
- Enable attribute parsing on versions lower than 8.0 by @danog in #11284
- Fix type assertion for Arithemtic addition and subtraction by @KevinVanSonsbeek in #11269
- Fix config error in LSP by @tm1000 in #11255
- Replace felixfbecker/advanced-json-rpc with maintained fork by @danog in #11282
Docs
Internal changes
Full Changelog: 6.5.1...6.6.0
6.5.1
6.5.0
What's Changed
Features
- The psalm.dev REPL now supports the
disableVarParsing
config by @danog - Add allFunctionsGlobal and allConstantsGlobal options, useful for legacy codebases which do not use Composer to preload functions and constants by @danog in #11259
Fixes
- Fix deep scanning of files light-scanned in main thread by @danog in #11264
- Template inference bugfix by @danog in #11267
- Force usage of latest patch version of PHP to avoid PHP bugs by @danog in #11270
Full Changelog: 6.4.1...6.5.0
6.4.1
What's Changed
Fixes
- Disable uv to avoid fork() issues by @danog in #11250
- Fix issue with insufficient shared memory for interned strings buffer by @yethee in #11243
- Simplify redis return types by @danog in #11256
- Improve performance and accuracy of types comparison by @danog in #11257
- Fix TemplateInferredTypeReplacer by @VincentLanglet in #11258
Internal changes
- Allow sebastian/diff v7 by @liviuconcioiu in #11260
New Contributors
- @liviuconcioiu made their first contribution in #11260
Full Changelog: 6.4.0...6.5.0